SSAS - 发货主题数据第1阶

本文按SSAS - 生成模拟测试数据的方法,生成基于发货主题的模拟数据。

  1. 产品
sql 复制代码
SELECT * FROM (VALUES (101, '产品1'), (102, '产品2'), (103, '产品3')) AS Products(Id, Name)
Id Name
101 产品1
102 产品2
103 产品3
  1. 日期
sql 复制代码
SELECT
    T.[Date] AS 日期,
    YEAR(T.[Date]) AS 年,
    FORMAT(MONTH(T.[Date]), '00') AS 月,
    FORMAT(DAY(T.[Date]), '00') AS 日,
    CAST(FORMAT(T.[Date], 'yyyyMM') AS INT) AS 年月,
    CASE DATEPART(dw, T.[Date])
        WHEN 2 THEN N'星期一'
        WHEN 3 THEN N'星期二'
        WHEN 4 THEN N'星期三'
        WHEN 5 THEN N'星期四'
        WHEN 6 THEN N'星期五'
        WHEN 7 THEN N'星期六'
        WHEN 1 THEN N'星期日'
    END AS 星期
FROM
    (
        SELECT 
            DATEADD(MONTH, number, '2024-01-01') AS [Date]
        FROM master.dbo.spt_values 
        WHERE type = 'P' AND number BETWEEN 0 AND 23
    ) AS T
日期 年月 星期
2024-01-01 00:00:00.000 2024 01 01 202401 星期一
2024-02-01 00:00:00.000 2024 02 01 202402 星期四
... ... ... ... ... ...
2025-12-01 00:00:00.000 2025 12 01 202512 星期一
  1. 目标
sql 复制代码
SELECT
    DATEADD(MONTH, sv.number, '2025-01-01') AS Date,
    p.ProductId,
    100 AS Quantity,
    1000 AS Total
FROM master.dbo.spt_values sv
CROSS JOIN (VALUES (101), (102), (103)) AS p(ProductId)
WHERE sv.type = 'P' AND sv.number BETWEEN 0 AND 11
Date ProductId Quantity Total
2025-01-01 00:00:00.000 101 1011 4210
2025-01-01 00:00:00.000 102 409 8650
2025-01-01 00:00:00.000 103 684 9420
2025-02-01 00:00:00.000 101 271 4340
2025-02-01 00:00:00.000 102 411 6420
2025-02-01 00:00:00.000 103 296 7140
... ... ... ...
2025-12-01 00:00:00.000 101 642 4680
2025-12-01 00:00:00.000 102 1003 3790
2025-12-01 00:00:00.000 103 159 6500
  1. 发货
sql 复制代码
SELECT
    DATEADD(MONTH, sv.number, '2024-01-01') AS Date,
    p.ProductId,
    /* 2024年为50,2025年为100 */
    CASE WHEN sv.number BETWEEN 0 AND 11 THEN 50 ELSE 100 END AS Quantity,
    CASE WHEN sv.number BETWEEN 0 AND 11 THEN 50 ELSE 100 END * 10 AS Total
FROM
    master.dbo.spt_values sv
CROSS JOIN
    (VALUES (101), (102), (103)) AS p(ProductId)
WHERE
    sv.type = 'P'
    AND sv.number BETWEEN 0 AND 23;
Date ProductId Quantity Total
2024-01-01 00:00:00.000 101 50 500
2024-01-01 00:00:00.000 102 50 500
2024-01-01 00:00:00.000 103 50 500
2024-02-01 00:00:00.000 101 50 500
2024-02-01 00:00:00.000 102 50 500
2024-02-01 00:00:00.000 103 50 500
... ... ... ...
2025-12-01 00:00:00.000 101 100 1000
2025-12-01 00:00:00.000 102 100 1000
2025-12-01 00:00:00.000 103 100 1000
  1. 目标发货里的产品日期字段分别与产品表和日期表进行关联,结果如下图。
相关推荐
2501_944934735 小时前
直播运营需要哪些数据分析能力?场观、停留、成交和投流怎么联动分析
数据挖掘·数据分析
荒川之神5 小时前
Oracle 数据仓库雪花模型设计(完整实战方案)
数据库·数据仓库·oracle
Captain_Data6 小时前
Python机器学习sklearn线性模型完整指南:LinearRegression/Ridge/Lasso详细代码注释
python·机器学习·数据分析·线性回归·sklearn
RestCloud7 小时前
2026年企业级ETL工具选型指南:从开源DataX到商业化ETLCloud的演进
数据仓库·开源·etl·datax·数据处理·数据集成·数据传输
荒川之神7 小时前
Oracle 数据仓库星座模型(Galaxy Model)设计原则
数据库·数据仓库·oracle
YangYang9YangYan8 小时前
财会行业学数据分析的价值分析
数据挖掘·数据分析
瀚高PG实验室9 小时前
ETL中,分区表子表未及时收集统计信息,导致sql执行耗时很长
数据库·数据仓库·sql·etl·瀚高数据库
观测云10 小时前
告别“巡检早高峰”:利用观测云定期报告实现高效异步巡检
数据分析
荒川之神10 小时前
Oracle 数据仓库雪花模型设计原则(核心 + 落地 + Oracle 数据库适配)
数据库·数据仓库·oracle
荒川之神10 小时前
Oracle 数据仓库星型模型设计原则
数据库·数据仓库·oracle