《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 ...
随机推荐
- 利用html5调用本地摄像头拍照上传图片
这个是前台HTML的代码. <div id="contentHolder"> <video id="video" width="32 ...
- iostat监控磁盘io
1.安装#yum install sysstat 2.启动#/etc/init.d/sysstat start 3.自启动#checkfig sysstat 4.基本使用#iostat -k 2每两秒 ...
- 2014年国人开发的最热门的开源软件TOP 100
不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外的认可.中国是 ...
- Codevs 1022 覆盖
时间限制: 1 s 空间限制: 128000 KB 题目等级 : 大师 Master 题目描述 Description 有一个N×M的单位方格中,其中有些方格是水塘,其他方格是陆地.如果要用1×2的矩 ...
- Linux系统下安装MongoDB 指南
1.首先连接到Linux系统. 2.到MongoDB官网下载合适的MongoDB安装压缩包. 下载页面:https://www.mongodb.org/downloads#production. 这里 ...
- [转]C++11 多线程
转载自:http://www.cnblogs.com/zhuyp1015/archive/2012/04/08/2438288.html C++11开始支持多线程编程,之前多线程编程都需要系统的支持, ...
- Linux环境下apache性能测试工具ab使用详解
网站性能压力测试是服务器网站性能调优过程中必不可缺少的一环.只有让服务器处在高压情况下,才能真正体现出软件.硬件等各种设置不当所暴露出的问题. 性能测试工具目前最常见的有以下几种:ab.http_lo ...
- OnScrollListener回调分析
new AbsListView.OnScrollListener() { @Override public void onScrollStateChanged(AbsListView ...
- des加密解密的两个方法
<?php //$input - stuff to decrypt //$key - the secret key to use function do_mencrypt($input, $ke ...
- 关于Thread.IsBackground属性的理解(转载)
C#中,Thread类有一个IsBackground 的属性.MSDN上对它的解释是:获取或设置一个值,该值指示某个线程是否为后台线程.个人感觉这样的解释等于没有解释. .Net中的线程,可以分为后台 ...