#listagg 関数の使用法
これは Oracle の列から行への関数: LISTAGG() 最初にサンプル コードを見てください: SQL コードwith temp as( select 'China' nation ,'Guangzhou' city from dual union all select 'China' nation ,'Shanghai' city from dual union all select 'China' nation ,'Beijing' city from dual union all select 'USA' nation ,'New York' city from dual union all select 'USA' nation ,'Bostom' city from dual union all select 'Japan' nation ,'Tokyo' city from dual ) select nation,listagg(city,',') within GROUP (order by city) from temp group by nationこれは最も基本的な使用法です:
LISTAGG(XXX,XXX) WITHIN GROUP( ORDER BY XXX)使用方法は、集計関数と同様に、Group by ステートメントを通じて各グループのフィールドを結合します。 ######とても便利。 も集約関数であり、高度な使用法があります。 is over(partition by XXX) つまり、これは次のとおりです。 Group by ステートメントを使用する場合は、LISTAGG 関数も使用できます。 SQL コード
with temp as( select 500 population, 'China' nation ,'Guangzhou' city from dual union all select 1500 population, 'China' nation ,'Shanghai' city from dual union all select 500 population, 'China' nation ,'Beijing' city from dual union all select 1000 population, 'USA' nation ,'New York' city from dual union all select 500 population, 'USA' nation ,'Bostom' city from dual union all select 500 population, 'Japan' nation ,'Tokyo' city from dual ) select population, nation, city, listagg(city,',') within GROUP (order by city) over (partition by nation) rank from temp概要: LISTAGG() は、単にそれをSUM() 関数。
以上がlistagg関数の使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。