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. 目标发货里的产品日期字段分别与产品表和日期表进行关联,结果如下图。
相关推荐
小飞象—木兮5 小时前
BCG波士顿矩阵深度解析及应用指南:核心逻辑、落地路径、常见误区、案例
大数据·人工智能·矩阵·数据分析·用户运营
欢迎来到祖安!8 小时前
企业微信 API 接口能力介绍:支持消息收发、图片发送、表情互动、联系人管理等多场景应用
java·前端·数据仓库·spring cloud·企业微信
计算机源码社14 小时前
【大数据项目实战】基于大数据的影视内容生态综合质量分析与可视化-基于数据挖掘的影视内容类型共现与口碑聚类分析系统
大数据·人工智能·python·数据挖掘·数据分析·毕业设计·课程设计
Mr数据杨16 小时前
议会事务多标签文本分类实战 从 Open Data St Gallen 看推荐排序建模
人工智能·数据分析·kaggle竞赛
2601_9627806918 小时前
2026 秋招数据产品分析岗位技能拆解
数据分析
hqyjzsb20 小时前
Python 技术人转型 AI:CAIE Level I、Level II 对比怎么选
开发语言·人工智能·python·金融·数据挖掘·数据分析·aigc
SelectDB1 天前
Apache Doris 高并发点查与实时写入笔记:一套引擎统一实时数仓与在线服务
大数据·数据库·数据分析
SelectDB1 天前
Apache Doris 存算分离实操:从对象存储接入到多计算集群配置(附 SQL)
大数据·数据库·数据分析
SelectDB1 天前
Apache Doris 多表 Join 优化实战:从 CBO 到 Colocate Join 配置(附 SQL)
大数据·数据库·数据分析
2601_962298271 天前
交易开拓者什么语言?编程语言如何提升交易自动化?
数据分析·编程语言·期货交易·自动化交易·交易开拓者