您的位置:首页 > 数据库 > Oracle

Oracle生成指定表的列名,并前后添加select from

2015-06-30 17:06 387 查看
表的列名比较多的时候,手工一个个的写列名比较麻烦,这个函数可以让人偷偷懒

create or replace function f_GetCols(p_TableName in varchar2/*获取表中所有列名 前后添加select from*/) RETURN varchar2
is
Result varchar2(2000);
v_cnts number;
v_strTabName varchar2(200);
BEGIN
v_strTabName:=upper(p_tablename);
select count(1) into v_cnts from user_tables where table_name=v_strTabName;
if v_cnts>0 then
Result:='select ';
for cr in (select column_name from user_tab_columns where table_name=v_strTabName order by column_id)
loop
Result:=Result||cr.column_name||',';
end loop;
Result:=substr(Result,1,length(Result)-1);
Result:=Result||' from';
else
Result:='表不存在';
end if;
return(Result);
END f_GetCols;

使用方法

select f_GetCols(' 表名')from dual;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: