在Oracle数据库中,可以使用PIVOT
关键字将行转换为列。以下是一个简单的示例:
假设我们有一个名为employees
的表,结构如下:
Employee_ID | Department | Salary 1 | Sales | 5000 2 | HR | 6000 3 | Sales | 5500 4 | IT | 7000
如果我们想要将Department
列中的值转换为列,并显示每个部门的平均工资,可以使用以下查询:
SELECT * FROM employees PIVOT ( AVG(Salary) FOR Department IN ('Sales' AS Sales, 'HR' AS HR, 'IT' AS IT) );
运行此查询后,结果将如下所示:
Employee_ID | Sales_Avg | HR_Avg | IT_Avg 1 | 5000 | null | null 2 | null | 6000 | null 3 | 5500 | null | null 4 | null | null | 7000
在上面的示例中,我们将Department
列中的值Sales
、HR
和IT
转换为列,并显示每个部门的平均工资。