如何用SQL语句在MySQL中进行数据透视

451
2024/9/12 3:32:09
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在 MySQL 中,可以使用 CASE 语句实现数据透视

首先,创建一个示例表格并插入数据:

CREATE TABLE sales_data (
    product_id INT,
    month VARCHAR(10),
    sales INT
);

INSERT INTO sales_data (product_id, month, sales)
VALUES (1, 'January', 100),
       (1, 'February', 200),
       (2, 'January', 150),
       (2, 'February', 250);

接下来,使用 SQL 语句和 CASE 语句进行数据透视:

SELECT product_id,
       SUM(CASE WHEN month = 'January' THEN sales ELSE 0 END) AS January_sales,
       SUM(CASE WHEN month = 'February' THEN sales ELSE 0 END) AS February_sales
FROM sales_data
GROUP BY product_id;

这将返回以下结果:

+------------+--------------+----------------+
| product_id | January_sales| February_sales |
+------------+--------------+----------------+
|          1 |          100|             200 |
|          2 |          150|             250 |
+------------+--------------+----------------+

在此示例中,我们使用了 CASE 语句对每个月的销售额进行条件求和。通过对 product_id 进行分组,我们可以得到每个产品在每个月的销售额。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: MySQL中insertintoselect语句怎么使用