mysql支持pivot
时间: 2023-01-30 19:07:09 浏览: 211
SQL Server 2005新功能之PIVOT的描述
是的,MySQL 支持 pivot 操作。
pivot 操作是一种数据处理方法,可以将一个表中的行数据转换为列数据。这种转换对于表格数据的分析和展示非常有用。
MySQL 支持使用 CASE 语句和 GROUP BY 子句来实现 pivot 操作。具体的,你需要执行以下步骤:
1. 使用 SELECT 语句查询你想要转换的行数据,并指定所有的列。
2. 使用 CASE 语句为每个列指定新的列名。
3. 使用 GROUP BY 子句将行数据分组。
4. 使用 SUM、COUNT 等聚合函数计算每组数据的值。
例如,假设你有以下表格数据:
| | item | price | month |
|---|-----------|-------|--------|
| 1 | apple | 10 | jan |
| 2 | banana | 20 | jan |
| 3 | orange | 30 | jan |
| 4 | apple | 15 | feb |
| 5 | banana | 25 | feb |
| 6 | orange | 35 | feb |
你可以使用以下 MySQL 查询语句来实现 pivot 操作:
```
SELECT item,
SUM(CASE WHEN month = 'jan' THEN price ELSE 0 END) AS jan,
SUM(CASE WHEN month = 'feb' THEN price ELSE 0 END) AS feb
FROM table_name
GROUP BY item;
```
执行上述查询后,你会得到以下结果:
| item | jan | feb |
|-----------|------|------|
| apple | 10 | 15 |
| banana | 20 | 25 |
| orange | 30 | 35 |
这就是 pivot 操作的基本用法。你可以根据需要适当调整查询语
阅读全文