wm_concat
是一个 Oracle 数据库中的聚合函数,用于将多行数据连接成一个字符串
以下是一个使用 string_agg
函数的示例,该示例演示了如何在多表查询中将多行数据连接成一个字符串。假设我们有两个表:employees
和 departments
,并且我们想要获取每个部门的员工姓名列表。
SELECT d.department_id, d.department_name, STRING_AGG(e.first_name || ' ' || e.last_name, ', ') AS employee_names FROM employees e JOIN departments d ON e.department_id = d.department_id GROUP BY d.department_id, d.department_name;
在这个示例中,我们首先使用 JOIN
语句将 employees
表和 departments
表连接在一起。然后,我们使用 STRING_AGG
函数将每个部门的员工姓名连接成一个字符串。最后,我们使用 GROUP BY
子句按部门对结果进行分组。
请注意,STRING_AGG
函数在 PostgreSQL 9.0 及更高版本中可用。如果您使用的是较早版本的 PostgreSQL,您可能需要使用其他方法来实现类似的功能,例如使用 array_agg
函数和 array_to_string
函数。