日期:2014-05-17  浏览次数:20915 次

在oracle 动态sql 中 怎样实现类的的功能? 不用游标。
这是sqlserver 的 动态sql 。 
 DECLARE @SQL VARCHAR(MAX)
 SELECT @SQL=ISNULL(@SQL+',','')+ '['+CAST(ACCOUNT_ZONE AS VARCHAR)+']' FROM
 (SELECT DISTINCT ACCOUNT_ZONE FROM ACCOUNT_INFO ) A

EXEC (@SQL1)
 

现在想在oracle中实现类似的功能怎么办呢? 不用游标。。各位大侠帮帮忙。 
取出table_name  
 想让取出来的 格式的是  
  table_name1,table_name2,table_name3  
 
 select table_name from user_tables where substr(table_name,1,1)='B' ;

------解决方案--------------------
select wm_concat(table_name) from user_tables where substr(table_name,1,1)='B' ;
------解决方案--------------------
如果是10G 或者10g以后的版本可以用 wmsys.wm_concat()函数
如 select wmsys.wm_concat(table_name) from user_tables where substr(table_name,1,1)='B' ;
10g以前的话得写函数