如何使用sql将查询出来的结果,横向展示出来
时间: 2024-03-01 16:50:54 浏览: 18
可以使用 SQL 的聚合函数和 GROUP BY 子句将查询结果横向展示出来。
例如,假设有如下表格:
```
CREATE TABLE sales (
year INT,
month INT,
product VARCHAR(20),
revenue DECIMAL(10, 2)
);
INSERT INTO sales VALUES (2019, 1, 'A', 100.00);
INSERT INTO sales VALUES (2019, 1, 'B', 200.00);
INSERT INTO sales VALUES (2019, 2, 'A', 150.00);
INSERT INTO sales VALUES (2019, 2, 'B', 250.00);
```
要将按年份和月份分组的销售额按产品横向展示,可以使用如下 SQL 语句:
```
SELECT year, month,
SUM(CASE WHEN product = 'A' THEN revenue ELSE 0 END) AS A_revenue,
SUM(CASE WHEN product = 'B' THEN revenue ELSE 0 END) AS B_revenue
FROM sales
GROUP BY year, month;
```
这将返回如下结果:
```
| year | month | A_revenue | B_revenue |
|------|-------|-----------|-----------|
| 2019 | 1 | 100.00 | 200.00 |
| 2019 | 2 | 150.00 | 250.00 |
```
其中,使用了 SUM 聚合函数和 CASE 表达式将产品列转换为了 A_revenue 和 B_revenue 两列,分别对应产品 A 和 B 的销售额。这样就可以将查询结果横向展示出来。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)