select replace(((select wm_concat(name) from (select name from (select id,name from (select id,name from (select id,name from b where name not like '%P') where id >=2) 
where id != 3 and name != 'a') order by name)),(select nvl((select RES_ID from PMSDB.PMS_RESOURCE where RES_NAME = 'Test'),',') FROM dual ),
(select nvl((select name from b where name like'%P'),'.') from dual )) as ddd from dual 

解决方案 »

  1.   

    楼主 你的语法错了 修改如下 自己对照吧select replace((select wm_concat(name) from (select name from (select id,name from (select id,name from (select id,name from b where name not like '%P') where id >=2) 
    where id != 3 and name != 'a') order by name)),(select nvl((select RES_ID from PMSDB.PMS_RESOURCE where RES_NAME = 'Test'),',') FROM dual ),
    (select nvl((select name from b where name like'%P'),'.') from dual )) from dual 
      

  2.   

    sql写成这样会被开除的 o(∩_∩)o...
      

  3.   


    套的层太多了,看了眼花,如果有错,还是直接把错误贴出来吧。 /* Formatted on 2009-12-30 17:10:26 (QP5 v5.115.810.9015) */
    select replace(((select wm_concat(name) from (select name from (select id,name
          from (
          select id,name
          from (
          select id,name
          from b
          where name not like '%P')
          where id >=2)
    where id != 3 and name != 'a') order by name)),(select nvl((select RES_ID from
          PMSDB.PMS_RESOURCE
          where RES_NAME = 'Test'),',')
          FROM dual ),
    (select nvl((select name from b where name like'%P'),'.') from dual )) as ddd
          from dual
    ------------------------------------------------------------------------------ 
    Blog: http://blog.csdn.net/tianlesoftware 
    网上资源: http://tianlesoftware.download.csdn.net 
    相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx 
    Q Q 群:62697716 
      

  4.   

    select replace( ( ( select wm_concat(name) 
                        from ( select name 
                               from ( select id,name 
                                      from ( select id,name 
                                             from ( select id,name 
                                                    from b 
                                                    where name not like '%P') where id >=2 ) 
                                      where  id != 3 and name != 'a') 
                               order by name) ),
                      ( select nvl( ( select RES_ID 
                                      from   PMSDB.PMS_RESOURCE 
                                      where  RES_NAME = 'Test'),',') 
                        FROM dual ), 
                      ( select nvl( ( select name 
                                      from b 
                                      where name like'%P'),'.') 
                        from dual )
                    ) as ddd 
    from dual;多了一个左括号,其他语法未测试
      

  5.   

    sql写法的排版有点乱。把sql的格式排好了,这样就能够及时发现书写过程中出现的问题。