Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
174 views
in Technique[技术] by (71.8m points)

oracle - Return N columns from a table function

I need to implement a table function, which I will submit a request with an unknown number of columns. It looks like:

SELECT * from TABLE (function())

where function, for example'SELECT x, y FROM z. I don't know how do this, so I'd like to hear some sort of way to solve, just as an idea.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

I think what you are asking is you are getting multiple rows in the o/p when you are using

the function in select statement .

if i create a function as follows:

create or replace function get1job

(id in varchar2)

return varchar2 is

tittle jobs.JOB_TITLE%type;

begin

select job_title  into tittle from jobs where job_id=id;

return tittle;

end get1job;

and use it in select statement .

i will write :

select get_job('AD_PRES') from dual;

i will get only one row

if i write :

select get_job('AD_PRES') from jobs;

the number of rows displayed will be equal to the number of rows in the table jobs.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...