Maison > base de données > SQL > Utilisation de la fonction listagg

Utilisation de la fonction listagg

藏色散人
Libérer: 2020-05-06 15:21:07
original
31943 Les gens l'ont consulté

Utilisation de la fonction listagg

Utilisation de la fonction listagg

Il s'agit d'une fonction Oracle colonne à ligne : LISTAGG()

Regardez d'abord l'exemple de code :

Code 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
Copier après la connexion

Il s'agit de l'utilisation la plus basique :

LISTAGG(XXX,XXX) WITHIN GROUP( ORDER BY XXX)
Copier après la connexion

L'utilisation est comme une fonction d'agrégation, un champ de chaque groupe est assemblé via l'instruction Group by.

Très pratique.

est aussi une fonction d'agrégation, et il existe un usage avancé :

est terminé (partition par XXX)

En d'autres termes, c'est pas pratique pour vous Lorsque vous utilisez l'instruction Group by, vous pouvez également utiliser la fonction LISTAGG :

Code 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
Copier après la connexion

Résumé : LISTAGG() utilisez-le simplement comme Fonction SOMME().

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal