要合并重复数据到同一行,可以使用Oracle的聚合函数和GROUP BY子句来实现。以下是一个示例:
假设有一个名为"employees"的表,包含以下字段:employee_id, first_name, last_name, email, hire_date。
SELECT employee_id,
first_name,
last_name,
LISTAGG(email, ', ') WITHIN GROUP (ORDER BY email) AS emails,
MAX(hire_date) AS hire_date
FROM employees
GROUP BY employee_id, first_name, last_name;
以上查询将根据employee_id, first_name和last_name字段进行分组,并使用LISTAGG函数将重复的email字段合并到同一行,并用逗号分隔。hire_date字段使用MAX函数获取最大值。
这样,查询结果将会在同一行上合并重复的数据。