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. 目标发货里的产品日期字段分别与产品表和日期表进行关联,结果如下图。
相关推荐
yaodong5187 小时前
不会Python也能数据分析:Gemini 3.1 Pro解决办公问题的SQL自动生成
python·sql·数据分析
PaperData12 小时前
2000-2023年地级市数字基础设施评价指标体系
大数据·网络·数据库·人工智能·数据分析·经管
用户94161469336515 小时前
Python 实时监控 A 股行情并自动筛选强势股(REST + WebSocket 两种方案)
后端·数据分析
juniperhan15 小时前
Flink 系列第24篇:Flink SQL 集成维度表指南:存储选型、参数调优与实战避坑
大数据·数据仓库·sql·flink
一晌小贪欢15 小时前
第1节:数据分析环境配置——Jupyter Notebook全攻略
jupyter·数据挖掘·数据分析·可视化·数据可视化
HQChart15 小时前
HQChart使用教程105-K线图,分时图如何对接AI进行数据分析
人工智能·数据挖掘·数据分析·hqchart·k线图·走势图
babe小鑫15 小时前
零经验转行学习数据分析的价值分析
学习·数据挖掘·数据分析
PaperData16 小时前
2000-2025年《中国县域统计年鉴》pdf+excel版(附赠面板数据)
数据库·人工智能·数据分析·pdf·经管
Ada大侦探17 小时前
新手小白学习数据分析01----数据分析师???& 数据分析思维学习
android·学习·数据分析
码界筑梦坊17 小时前
116-基于Flask的健身房会员锻炼数据可视化分析系统
python·信息可视化·数据分析·flask·毕业设计