OLAP(Online Analytical Processing)在线分析处理。
主要用于复杂的数据分析和报表生成。与OLTP(Online Transaction Processing)处理实时交易和查询不同,OLAP处理的是对大规模数据集合进行多维度的分析,以便支持决策支持系统和数据挖掘等应用
假设我们有一个销售数据表,用于存储每天不同地区的产品销售情况:
CREATE TABLE sales (
sale_id INT PRIMARY KEY AUTO_INCREMENT,
date DATE,
region VARCHAR(50),
product VARCHAR(50),
quantity INT,
revenue DECIMAL(10, 2)
);
INSERT INTO sales (date, region, product, quantity, revenue) VALUES
('2023-07-01', 'North', 'Product A', 100, 1000.00),
('2023-07-01', 'North', 'Product B', 50, 500.00),
('2023-07-01', 'South', 'Product A', 75, 750.00),
('2023-07-01', 'South', 'Product B', 30, 300.00),
('2023-07-02', 'North', 'Product A', 120, 1200.00),
('2023-07-02', 'North', 'Product B', 60, 600.00),
('2023-07-02', 'South', 'Product A', 90, 900.00),
('2023-07-02', 'South', 'Product B', 40, 400.00);
我们想使用OLAP查询来统计每天的销售总量和总收入,并按照地区和产品进行分组
-- 创建数据立方体(Data Cube)
CREATE TABLE sales_cube AS
SELECT
date,
region,
product,
SUM(quantity) AS total_quantity,
SUM(revenue) AS total_revenue
FROM
sales
GROUP BY
date, region, product;
-- 查询数据立方体
SELECT * FROM sales_cube;
结果

浙公网安备 33010602011771号