oracleでgroup byとorder byの組み合わせで使う使い方

1136 ワード

group by:一般的に重合関数と結合して使用する.グループごとの平均値、最大値、最小値などをお願いします.order by:並べ替えキーワード、後は普通並べ替えの条件を書きます.今日は会社で不動産の制限禁止状態を統計する必要があります.しかし、使う時は細かいところに注意しなければなりません.今書いたsqlを貼ってください.
select bizname     ,max(  )   ,
                        max(    )     ,
                        max(     )      ,
                        max(  )   ,
                        max(    )     
from(
select   t.bizname,   t.parentid,   t.bizid,
							case when t.stateid=-1 then   ' '  else null end   ,
							case when t.stateid= 0then   ' '  else null end     ,
							case when t.stateid= 1 then   ' '  else null end      ,
							case when t.stateid=19 then   ' '  else null end   ,
							case when t.stateid=20 then   ' '  else null end     
from(
select a.bizname ,  b.stateid,  c.statename,  a.bizid,  a.parentid  from tbbiz a ,tbbizhousestateexclude b,tbhousestate c where a.bizid=b.bizid and b.stateid=c.stateid
) t
)  z
group by z.bizname,z.parentid,z.bizid order by z.parentid,z.bizid;      
二つの条件が一緒に使用する場合、2点に注意してください.1:group byはorder byの前に必要です.2:order byに並べ替えフィールドを使用する場合は、group byにも存在しなければなりません.