温馨提示×

Oracle怎么将多行数据转为一行

小亿
940
2024-01-19 17:00:09
栏目: 云计算

在Oracle中,可以使用聚合函数和条件表达式来将多行数据转为一行。以下是两种常用的方法:

  1. 使用LISTAGG函数:
SELECT LISTAGG(column_name, ', ') WITHIN GROUP (ORDER BY column_name) AS combined_data
FROM table_name;

其中,column_name是要合并的列名,table_name是要查询的表名。

  1. 使用CASE语句和聚合函数:
SELECT MAX(CASE WHEN condition1 THEN column1 END) AS column1,
       MAX(CASE WHEN condition2 THEN column2 END) AS column2,
       ...
       MAX(CASE WHEN conditionN THEN columnN END) AS columnN
FROM table_name;

其中,condition是条件表达式,column是要合并的列名,table_name是要查询的表名。

请根据具体情况选择适合的方法。

0