sql >> Databáze >  >> RDS >> Oracle

Existuje dotaz Oracle SQL, který agreguje více řádků do jednoho řádku?

Záleží na verzi Oracle, kterou používáte. Pokud podporuje funkci wm_concat(), můžete jednoduše udělat něco takového:

SELECT field1, wm_concat(field2) FROM YourTable GROUP BY field2;

wm_concat() v podstatě funguje stejně jako group_concat() v MySQL. Nemusí to být zdokumentováno, takže zapněte starý sqlplus a zjistěte, zda tam je.

Pokud není tam, pak budete chtít implementovat něco ekvivalentního sami. Některé pokyny, jak to udělat, najdete na stránce agregace řetězců na oracle-base.com.



  1. V Oracle AS alias nefunguje

  2. Vraťte řádky v přesném pořadí, v jakém byly vloženy

  3. Co znamená SELECT ... FOR XML PATH(' '),1,1)?

  4. Agregáty a dělení