select t1.name,t2.age,t2.memo from table1 t1,table2 t2 where .....
解决方案 »
- oracle概念问题:block多大?哪个参数?
- VS2008 oracle10g pro*c程序问题
- 如何执行这样的一个分页存储过程
- oracle 10g 手动exp手动导出出错?
- UTL_SMTP 写邮件 大数量的邮件体数据类型问题,谢谢
- Oracle设置内存参数的问题。
- 我快疯了!Oracle Enterprise Manager疑难杂症
- show一个超长sql查询,约700行,个人认为这个同事比较蠢
- 怎么样让oracle默认的日期格式为yy-mm-dd hh:mm:ss啊,不用to_date
- 如何查看那些用户锁定了那些表和行,以及该用户正在执行的SQL语句?
- 并发的问题
- 如果编写执行ORACLE 9I的SQL执行脚本(bat文件)
汗,那你给每个表建个视图好了…………
RETURN varchar is
iLoop number;
fieldname varchar2(1000);
fieldname_cur varchar2(30);
CURSOR cur_field is
SELECT COLUMN_NAME FROM SYS.USER_TAB_COLS
WHERE TABLE_NAME = UPPER(tablename)
AND COLUMN_NAME <> 'ID';BEGIN
open cur_field;
iLoop := 0;
loop
fetch cur_field into fieldname_cur;
exit when cur_field%notfound; iLoop := iLoop + 1; if iLoop > 1 then fieldname := fieldname || ',' || fieldname_cur;
else fieldname := fieldname_cur;
end if;end loop;
close cur_field;
return fieldname;END;
/
RETURN varchar is
fieldname varchar2(1000);
CURSOR mycur is
SELECT COLUMN_NAME FROM SYS.USER_TAB_COLS
WHERE TABLE_NAME = UPPER(tablename)
AND COLUMN_NAME <> 'ID';BEGIN
for mytemp in mycur loop
colname := colname||mytemp.column_name||',';
end loop;
colname := substr(colname,0,length(colname)-1);
--exec 'select '||colname||' from aaa;';想直接用过程选出数据,那这句该怎么写才对?
END;
/
distinct一下不就是了,
你看这个启发行不行
我写的是取出所有的字段名称,
你可以把这个结果用在直接的程序中。或者使用游标。一样可以完成。但是就需要修改当前的函数,使用存储过程,返回游标。