在MySQL中如何进行多维数据透视分析

avatar
作者
猴君
阅读量:0

在 MySQL 中,可以使用 SQL 语句和内置函数对多维数据进行透视分析

首先,创建一个示例表格,包含销售数据:

CREATE TABLE sales_data (     product_id INT,     region VARCHAR(255),     month VARCHAR(255),     revenue DECIMAL(10, 2) ); 

接下来,向表格中插入一些示例数据:

INSERT INTO sales_data (product_id, region, month, revenue) VALUES (1, 'North', 'January', 1000.00),        (1, 'North', 'February', 1200.00),        (1, 'South', 'January', 800.00),        (1, 'South', 'February', 900.00),        (2, 'North', 'January', 1500.00),        (2, 'North', 'February', 1600.00),        (2, 'South', 'January', 1300.00),        (2, 'South', 'February', 1400.00); 

现在,我们将使用 CASE 语句和聚合函数(如 SUM())对数据进行多维透视。以下是一个查询示例,展示了如何根据产品 ID、地区和月份对销售收入进行透视:

SELECT product_id, region,        SUM(CASE WHEN month = 'January' THEN revenue ELSE 0 END) AS January_Revenue,        SUM(CASE WHEN month = 'February' THEN revenue ELSE 0 END) AS February_Revenue FROM sales_data GROUP BY product_id, region; 

这将返回以下结果:

+------------+----------+---------------+----------------+ | product_id | region   | January_Revenue | February_Revenue | +------------+----------+---------------+----------------+ |         1  | North    | 1000.00        | 1200.00         | |         1  | South    | 800.00         | 900.00          | |         2  | North    | 1500.00        | 1600.00         | |         2  | South    | 1300.00        | 1400.00         | +------------+----------+---------------+----------------+ 

通过调整 CASE 语句和分组条件,你可以根据需要对数据进行不同的多维透视分析。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!