可以使用Oracle中的LISTAGG函數來實現將多行數據拼接成一行。LISTAGG函數的語法如下:
LISTAGG(expression, delimiter) WITHIN GROUP (ORDER BY order_by_clause)
其中,expression是要拼接的列或表達式,delimiter是用作分隔符的字符,order_by_clause是指定拼接順序的列或表達式。
例如,假設有一個表格employee,包含以下數據:
employee_id | first_name | last_name |
---|---|---|
1 | John | Smith |
2 | Jane | Doe |
要將這些數據拼接成一行,可以使用以下查詢:
SELECT LISTAGG(first_name || ' ' || last_name, ', ') WITHIN GROUP (ORDER BY employee_id) AS full_name
FROM employee;
這將輸出:John Smith, Jane Doe。