在Oracle中,沒有像MySQL中的group_concat()函數(shù)來直接實現(xiàn)將多行數(shù)據(jù)合并成一行。但是可以使用Oracle中的LISTAGG()函數(shù)來實現(xiàn)類似的功能。下面是一個示例:
假設(shè)有一個名為employee的表,包含兩列:dept_id和employee_name。我們想要按照dept_id分組,將每個部門的員工姓名合并成一個字符串。
SELECT dept_id, LISTAGG(employee_name, ',') WITHIN GROUP (ORDER BY employee_name) AS employees
FROM employee
GROUP BY dept_id;
在上面的查詢中,LISTAGG()函數(shù)將employee_name按照逗號分隔符連接起來,并且按照employee_name的順序進(jìn)行排序。通過GROUP BY子句將結(jié)果按照dept_id進(jìn)行分組。
通過使用LISTAGG()函數(shù),可以實現(xiàn)類似于group_concat()函數(shù)的功能,并將多行數(shù)據(jù)合并成一行。