Ostatnio zaktualizowane 2023/02/26 przez admin
Funkcje Oracle SQL – Funkcja LISTAGG.
Funkcja LISTAGG w Oracle SQL jest funkcją agregującą, która pozwala na łączenie wierszy w jeden ciąg znaków. Jest to bardzo przydatne, gdy chcemy wyświetlić wiele wierszy w jednym wierszu. Funkcja ta jest dostępna od wersji Oracle 11g.
Do czego służy funkcja LISTAGG?
Funkcja LISTAGG służy do łączenia wierszy w jeden ciąg znaków. Może być używana do tworzenia listy wartości, które są wyświetlane w jednym wierszu. Może być również używana do tworzenia listy wartości, które są wyświetlane w wielu wierszach.
Jak używać funkcji LISTAGG?
Funkcja LISTAGG jest bardzo prosta w użyciu. Składnia funkcji wygląda następująco:
LISTAGG (kolumna, separator) WITHIN GROUP (ORDER BY kolumna)
Kolumna jest kolumną, która ma być użyta do łączenia wierszy. Separator jest znakiem, który będzie użyty do oddzielania wartości w ciągu znaków. ORDER BY kolumna jest opcjonalne i pozwala na sortowanie wartości w ciągu znaków.
Przykład użycia funkcji LISTAGG
Aby lepiej zobrazować działanie funkcji LISTAGG, przyjrzyjmy się następującemu przykładowi:
Mamy tabelę zawierającą listę produktów i ich cen. Chcemy wyświetlić listę produktów w jednym wierszu, oddzielając je przecinkiem.
SELECT LISTAGG (product_name, ’, ’) WITHIN GROUP (ORDER BY product_name) AS product_list
FROM products;
Wynik tego zapytania będzie wyglądał następująco:
Product_list
Apple, Banana, Orange, Pear
Jak widać, funkcja LISTAGG pozwala na łatwe łączenie wierszy w jeden ciąg znaków. Może być używana do tworzenia listy wartości, które są wyświetlane w jednym wierszu lub w wielu wierszach.