码迷,mamicode.com
首页 > 数据库 > 详细

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

时间:2015-06-30 17:49:58      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:

表的列名比较多的时候,手工一个个的写列名比较麻烦,这个函数可以让人偷偷懒

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;

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

标签:

原文地址:http://www.cnblogs.com/iHqq/p/4611042.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!