select t.*,
(select  b.etorgname  from  pub_et_def  b  where  C.Marketorgid  =  b.etorgid)  bb, 
 (select  c.countername  from  rtl_counter_def  c  where  D.Counterid  =  c.Counterid)  dd
from 
(SELECT              
             C.Marketorgid        aa,     
                   D.Counterid                        cc         
               FROM  
                   RTL_SA_DOC  C,  
                   RTL_SA_DTL  D  
             WHERE    
                 C.RTLSAID=D.RTLSAID  and    
                 to_char(C.ts,'yyyymmdd')  >=  20040904  and  to_char(C.ts,'yyyymmdd')  <=  20040906  
                 GROUP  BY  C.Marketorgid,D.Counterid ) T ;

解决方案 »

  1.   

    select t.*,
    (select  b.etorgname  from  pub_et_def  b  where  C.Marketorgid  =  b.etorgid)  bb, 
     (select  c.countername  from  rtl_counter_def  c  where  D.Counterid  =  c.Counterid)  dd,
    (SELECT  
                             SUM(DECODE(a.RTLSATYPE,1,b.REALMONEY,0,-b.REALMONEY))    ff  
                       FROM  
                           RTL_SA_DOC  a,  
                           RTL_SA_DTL  b  
                     WHERE    
                         a.RTLSAID=b.RTLSAID  and    
                         to_char(a.ts,'yyyymmdd')  =  to_char(t.ts,'yyyymmdd')  AND 
                         A.Marketorgid  =  t.Marketorgid  AND  
                         B.Counterid            =    t.Counterid  
                         )  EE        
    from 
    (SELECT              
                 C.Marketorgid        aa,     
                       D.Counterid                        cc,
    trunc(c.ts) ts         
                   FROM  
                       RTL_SA_DOC  C,  
                       RTL_SA_DTL  D  
                 WHERE    
                     C.RTLSAID=D.RTLSAID  and    
                     to_char(C.ts,'yyyymmdd')  >=  20040904  and  to_char(C.ts,'yyyymmdd')  <=  20040906  
                     GROUP  BY  C.Marketorgid,D.Counterid,trunc(c.ts) ) T
      

  2.   

    select col_name,聚集函数() from table_name where ...group by col_name
    按这个基本的格式去做..就不会出问题的..
      

  3.   

    是的,注意,聚集函数使用的时候
    select col_name1,col_name2,聚集函数() from table_name ...group by col_name1,col_name2;聚集函数前面有几个列就要在group by后面出现几列,否则出现not a group by 表达式
      

  4.   

    你的查询行不通,group by语句中,select得字段必须要么是聚集函数,要么是用来分组的字段
    二楼的写法你可以试一下,只要得到结果一样为什么不能用呢