《BI项目笔记》基于雪花模型的维度设计
GBGradeCode
外键关系:
|
1 |
烟叶等级 |
T_GBGradeCode.I_DistinctionID=T_Distinction.I_DistinctionID |
烟叶等级分为:上等烟、中等烟、下等烟、末等烟、低等烟、低次等烟、其它、下低等烟 |
|
2 |
分级标准 |
T_GBGradeCode.I_GradStanCode=T_GradeStandard.I_GradStanCode |
取值为:四十二级、二十八级、自定义、其他、工艺级别 |
|
3 |
烟叶烤型 |
T_GBGradeCode.C_Type=T_TobaccoLeafType.C_Type |
取值为:白肋烟、烤烟 |
QualityModel

外键关系:
T_TIR_QualityModelAdmin.F_OriginID = T_Origin.I_OriginID
T_TIR_QualityModelAdmin.F_CustomerCode = T_CustomInfo.T_CustomInfo
T_TIR_QualityModelAdmin.F_Tag = T_GBGradeCode.I_GBGradeID
数据处理:
ALTER TABLE T_TIR_QualityModelAdmin ALTER COLUMN F_CustomerCode VARCHAR(5) DELETE FROM T_TIR_QualityModelAdmin
WHERE F_CustomerCode NOT IN ( SELECT C_CustCode
FROM T_CustomInfo ) DELETE FROM T_TIR_QualityModelAdmin
WHERE F_OriginID NOT IN ( SELECT I_OriginID
FROM T_Origin ) UPDATE T_TIR_QualityModelAdmin
SET T_TIR_QualityModelAdmin.F_Tag = T_GBGradeCode.I_GBGradeID
FROM T_GBGradeCode
WHERE T_TIR_QualityModelAdmin.F_GradeCode = T_GBGradeCode.V_GBGradeCode DELETE FROM T_TIR_QualityModelAdmin
WHERE T_TIR_QualityModelAdmin.F_Tag NOT IN ( SELECT I_GBGradeID
FROM T_GBGradeCode ) ALTER TABLE T_Origin ALTER COLUMN I_OriginPID INT NULL UPDATE [T_Origin]
SET [I_OriginPID] = NULL
WHERE [I_OriginPID] = 0
QualMoistureMiddleRawChemistry
QualMoistureMiddle
数据处理:
ALTER TABLE T_TeamOrder ALTER COLUMN V_TeamOrderCode VARCHAR(10) NOT NULL
ALTER TABLE T_QualMoisture_Middle ADD DeptID INT NULL
ALTER TABLE T_QualMoisture_Middle ADD TeamOrderCode VARCHAR(10) NULL UPDATE T_QualMoisture_Middle
SET DeptID = T_Department.I_DepID
FROM T_Department
WHERE T_QualMoisture_Middle.V_Team = T_Department.V_DepName UPDATE T_QualMoisture_Middle
SET TeamOrderCode = T_TeamOrder.V_TeamOrderCode
FROM T_TeamOrder
WHERE T_QualMoisture_Middle.V_Team_Order = T_TeamOrder.V_TeamOrder
RoastingPlan
数据处理:
ALTER TABLE TB_MRP_ROASTING_PLAN_DETAIL2 ADD ProdLineID VARCHAR(10) NULL
ALTER TABLE TB_MRP_ROASTING_PLAN_DETAIL2 ADD TLProcTypeID INT NULL
ALTER TABLE TB_MRP_ROASTING_PLAN_DETAIL2 ADD PurchaseID INT NULL
ALTER TABLE TB_MRP_ROASTING_PLAN_DETAIL2 ADD OriginID INT NULL
ALTER TABLE TB_MRP_ROASTING_PLAN_DETAIL2 ADD CustCode VARCHAR(5) NULL -- 生产线
UPDATE TB_MRP_ROASTING_PLAN_DETAIL2
SET TB_MRP_ROASTING_PLAN_DETAIL2.ProdLineID = T_ManuProductLine.V_LineCode
FROM T_ManuProductLine
WHERE TB_MRP_ROASTING_PLAN_DETAIL2.COL_RPD_ROASTING_DEVICE = T_ManuProductLine.V_ProdLine DELETE FROM TB_MRP_ROASTING_PLAN_DETAIL2
WHERE ProdLineID IS NULL -- 加工类型
UPDATE TB_MRP_ROASTING_PLAN_DETAIL2
SET TB_MRP_ROASTING_PLAN_DETAIL2.TLProcTypeID = T_TLProcType.I_TLProcTypeCode
FROM T_TLProcType
WHERE TB_MRP_ROASTING_PLAN_DETAIL2.COL_RPD_MANUFACTURE_TYPE = T_TLProcType.V_TLProcType DELETE FROM TB_MRP_ROASTING_PLAN_DETAIL2
WHERE TLProcTypeID IS NULL -- 收购类型
UPDATE TB_MRP_ROASTING_PLAN_DETAIL2
SET TB_MRP_ROASTING_PLAN_DETAIL2.PurchaseID = T_PurchaseType.I_PurchaseID
FROM T_PurchaseType
WHERE TB_MRP_ROASTING_PLAN_DETAIL2.COL_RPD_FT_PURCHASE_TYPE = T_PurchaseType.V_PurchaseType -- 成品产地
UPDATE TB_MRP_ROASTING_PLAN_DETAIL2
SET TB_MRP_ROASTING_PLAN_DETAIL2.OriginID = T_Origin.I_OriginID
FROM T_Origin
WHERE TB_MRP_ROASTING_PLAN_DETAIL2.COL_RPD_RT_AREA = T_Origin.V_Origin DELETE FROM TB_MRP_ROASTING_PLAN_DETAIL2
WHERE OriginID IS NULL -- 客户
UPDATE TB_MRP_ROASTING_PLAN_DETAIL2
SET TB_MRP_ROASTING_PLAN_DETAIL2.CustCode = T_CustomInfo.C_CustCode
FROM T_CustomInfo
WHERE TB_MRP_ROASTING_PLAN_DETAIL2.COL_RPD_RT_OWNER = T_CustomInfo.V_Customer DELETE FROM TB_MRP_ROASTING_PLAN_DETAIL2
WHERE CustCode IS NULL
《BI项目笔记》基于雪花模型的维度设计的更多相关文章
- 微软BI 之SSAS 系列 - 基于雪花模型的维度设计
基于雪花模型的维度以下面的 Product 产品与产品子类别,产品类别为例. DimProduct 表和 DimProductSubcategory 表有外键关系,而 DimProductSubcat ...
- 《BI项目笔记》——微软BI项目笔记连载
本系列文章主要是结合实际项目,加上自己的总结,整理出来的一系列项目笔记,涉及微软SQL Server2008中商务智能开发中的SSAS.SSIS模块: 准备工作: <BI项目笔记>基于雪 ...
- 《BI项目笔记》创建时间维度(2)
创建步骤: 序号 选择的属性 重命名后的名称 属性类别 1 DateKey DateKey 常规 2 Month Key Month Key 月份 3 English Month Name Eng ...
- 《BI项目笔记》增量ETL数据抽取的策略及方法
增量抽取 增量抽取只抽取自上次抽取以来数据库中要抽取的表中新增或修改的数据.在ETL使用过程中.增量抽取较全量抽取应用更广.如何捕获变化的数据是增量抽取的关键.对捕获方法一般有两点要求:准确性,能够将 ...
- 《BI项目笔记》创建时间维度(1)
SSAS Date 维度基本上在所有的 Cube 设计过程中都存在,很难见到没有时间维度的 OLAP 数据库.但是根据不同的项目需求, Date 维度的设计可能不大相同,所以在设计时间维度的时候需要搞 ...
- 《BI项目笔记》创建父子维度
创建步骤: 而ParentOriginID其实就是对应的ParentOriginID,它的 Usage 必须是 Parent 才能表示这样的一个父子维度. 查看OriginID属性, Usage 是 ...
- 《BI项目笔记》创建标准维度、维度自定义层次结构
- 《BI项目笔记》报到信息分析Cube
数据源设置:数据处理逻辑: --处理丢失外键关系数据 SELECT * FROM T_ReportLeafGrade WHERE FSubFID NOT IN ( SELECT FID FROM T_ ...
- 《BI项目笔记》挑选产出分析Cube
数据源设置: 数据处理逻辑: --I_GBGradeID SELECT * FROM T_NPick_PkgMov WHERE I_GBGradeID NOT IN ( SELECT I_GBGrad ...
随机推荐
- SharePoint 2013 网站应用程序、网站集、网站知识整理
网站应用程序:Web 应用程序是一种可以通过Web访问的应用程序.我们自己以前用VS开发的Web应用程序一般是通过人工部署到IIS上的,而SharePoint的Web应用程序是由SharePoint安 ...
- java IO 学习总结
推荐文章:java I/O学习 只要是处理纯文本数据,就要优先考虑使用字符流,除此之外都用字节流 字符流:FileReader和BufferedReader的使用 String path = &quo ...
- 解决ssh登录后闲置时间过长而断开连接
++++++++++++++++++++++++++++ #!/usr/bin/env bash password_5="Uxxx7"host_5="129.x.x.1 ...
- yii2.0 网址重写
- 《Linux内核分析》第六周 读书笔记
<Linux内核设计与实现>CHAPTER3阅读梳理 [学习时间:3hours] [学习内容:进程的描述:进程的生命周期(包括创建.终结)] 一.进程(任务)描述 1.进程是处于执行期的程 ...
- Redis的Python客户端redis-py
1. 安装 1. redis-py a. 使用easy_install 1 sudo easy_install redis b. 源码安装 1 2 3 git clone https://githu ...
- Line segment matching
FMII2方法:FMII方法的轻微的修改.有限线段和无限线段(直线)的匹配. 求解方法: SVD分解 Unit Quaternion 协方差矩阵: 通过对C进行SVD分解得到R,根据R求得T. 算法流 ...
- 【转】PHP 位运算应用口诀
位运算应用口诀 清零取位要用与,某位置一可用或 若要取反和交换,轻轻松松用异或 移位运算 要点 1 它们都是双目运算符,两个运算分量都是整形,结果也是整形. 2 "<<" ...
- TCP中异常关闭链接的意义 异常关闭的情况
终止一个连接的正常方式是发送FIN. 在发送缓冲区中 所有排队数据都已发送之后才发送FIN,正常情况下没有任何数据丢失. 但我们有时也有可能发送一个RST报文段而不是F IN来中途关闭一个连接.这称为 ...
- js 给样式添加随机颜色
下面提供了三种获取随机颜色值的方法 方法一: 创建一个颜色 HEX 值数组,然后随机抽取这个数组里6个值,组合生成颜色. function color1(){ var color = "&q ...