oracle多行數(shù)據(jù)怎么拼接成一行

小億
329
2024-02-29 16:55:15
欄目: 云計(jì)算

可以使用Oracle中的LISTAGG函數(shù)來(lái)實(shí)現(xiàn)將多行數(shù)據(jù)拼接成一行。LISTAGG函數(shù)的語(yǔ)法如下:

LISTAGG(expression, delimiter) WITHIN GROUP (ORDER BY order_by_clause)

其中,expression是要拼接的列或表達(dá)式,delimiter是用作分隔符的字符,order_by_clause是指定拼接順序的列或表達(dá)式。

例如,假設(shè)有一個(gè)表格employee,包含以下數(shù)據(jù):

employee_id first_name last_name
1 John Smith
2 Jane Doe

要將這些數(shù)據(jù)拼接成一行,可以使用以下查詢:

SELECT LISTAGG(first_name || ' ' || last_name, ', ') WITHIN GROUP (ORDER BY employee_id) AS full_name
FROM employee;

這將輸出:John Smith, Jane Doe。

0