Heim  >  Artikel  >  Datenbank  >  Verwendung der Listagg-Funktion

Verwendung der Listagg-Funktion

藏色散人
藏色散人Original
2020-04-22 09:18:2831865Durchsuche

Verwendung der Listagg-Funktion

Verwendung der Listagg-Funktion

Dies ist eine Oracle-Spalte-zu-Zeile-Funktion: LISTAGG()

Sehen Sie sich zunächst den Beispielcode an:

SQL-Code

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

Dies ist die grundlegendste Verwendung:

LISTAGG(XXX,XXX) WITHIN GROUP( ORDER BY XXX)

Die Verwendung ist: Wie bei einer Aggregatfunktion wird ein Feld jeder Gruppe durch die Group by-Anweisung zusammengefügt.

Sehr praktisch.

ist ebenfalls eine Aggregatfunktion und es gibt eine erweiterte Verwendung:

ist vorbei (Partition durch XXX)

Mit anderen Worten, es ist vorbei für Sie nicht praktikabel Wenn Sie die Group by-Anweisung verwenden, können Sie auch die LISTAGG-Funktion verwenden:

SQL-Code

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

Zusammenfassung: LISTAGG() verwenden Sie es einfach als SUM()-Funktion.

Das obige ist der detaillierte Inhalt vonVerwendung der Listagg-Funktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn