===========================================================
生成列名的连接
===========================================================
作者: zzw0598(http://zzw0598.itpub.net)
发表于: 2006.05.22 15:55
分类: oracle开发
出处: http://zzw0598.itpub.net/post/455/100855
---------------------------------------------------------------
发表于: 2006.05.22 15:55
分类: oracle开发
出处: http://zzw0598.itpub.net/post/455/100855
---------------------------------------------------------------
没有侵权的意思啊,放在自己这里用的时候好找。
开发中常常会用到一个表的字段组成的字符串,通常是用逗号分隔的一个列表,例如C_DM, C_MC, N_YXX 以前都是desc 表,然后将列名复制粘贴到Word里,然后用查找替换的方式将回车替换成“,”或者其他分隔符来做到,现在用sql来得到 select str from ( select str, rank()over(order by length(str) desc) rk from ( select sys_connect_by_path(column_name,'&Prefix') str from ( select s.*, rank()over(order by column_id desc) rn from user_tab_cols s where s.table_name=upper('&x') ) connect by rn = prior rn-1) ) where rk=1; 运行时输入前缀和表名即可,表名不区分大小写,对生成的字符串去掉最前面的分隔符即可











