1. 程式人生 > >《BI專案筆記》基於雪花模型的維度設計

《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專案筆記》建立時間維度(2)

建立步驟: 序號 選擇的屬性 重新命名後的名稱 屬性類別 1 DateKey D

BI專案筆記》建立時間維度(1)

SSAS Date 維度基本上在所有的 Cube 設計過程中都存在,很難見到沒有時間維度的 OLAP 資料庫。但是根據不同的專案需求, Date 維度的設計可能不大相同,所以在設計時間維度的時候需要搞清楚幾個問題: 你的業務涉及到的最低的細節級別是什麼?比如按季度檢視報表還是按月份,或者按周,或者再甚者

BI專案筆記》建立父子維度

建立步驟: 而ParentOriginID其實就是對應的ParentOriginID,它的 Usage 必須是 Parent 才能表示這樣的一個父子維度。 檢視OriginID屬性, Usage 是 Key。 在這裡一定要注意,父子關係層次結構中的子級必須是維度的關鍵屬性,所以OriginID這裡的

BI專案筆記基於雪花模型維度設計

GBGradeCode 外來鍵關係: 1 菸葉等級 T_GBGradeCode.I_DistinctionID=T_Distinction.I_Distinc

BI專案筆記》多維資料集中度量值設計時的聚合函式

Microsoft SQL Server Analysis Services 提供了幾種函式,用來針對包含在度量值組中的維度聚合度量值。預設情況下,度量值按每個維度進行求和。但是,通過 AggregateFunction 屬性,您可以修改此行為。聚合函式的累加性可確定度量值如何在多維資料集的所有維度中進行聚合

BI專案筆記》歷年感官評吸質量均值變化分析Cube的建立

分析主題主要維度:菸葉級別、菸葉級別按等級資訊、菸葉級別按分級標準(標準維度)產地(父子維度)檢測時間(時間維度,以Tqc_Raw_SmokingTest .CheckTime欄位派生CheckDate欄位)樣品維度 主要指標: 香氣特徵_清香_平均值香氣特徵_甜香_平均值香氣特徵_焦香_平均值煙氣特徵_

BI專案筆記》歷年外觀質量均值變化分析Cube的建立

分析主題主要維度:菸葉級別、菸葉級別按等級資訊、菸葉級別按分級標準(標準維度)產地(父子維度)檢測時間(時間維度,以Tqc_Raw_PresentationQuality . CheckTime欄位派生CheckDate欄位)樣品維度 主要指標:部位_平均值顏色_平均值成熟度_平均值油分_平均值身份_平均值

BI專案筆記》報到資訊分析Cube

--處理丟失外來鍵關係資料 SELECT * FROM T_ReportLeafGrade WHERE FSubFID NOT IN ( SELECT FID FROM T_RaceLeafReport )

BI專案筆記》無法解密受保護的 XML 節點“DTS:Password” 解決辦法

說明: 無法解密受保護的 XML 節點“DTS:Password”,錯誤為 0x8009000B“該項不適於在指定狀態下使用。”。可能您無權訪問此資訊。當發生加密錯誤時會出現此錯誤。請確保提供正確的金鑰。 解決辦法:1.在Integration Services中找到要執行的包,右鍵選擇匯出包,在匯出包屬性

BI專案筆記》增量ETL資料抽取的策略及方法

增量抽取 增量抽取只抽取自上次抽取以來資料庫中要抽取的表中新增或修改的資料。在ETL使用過程中。增量抽取較全量抽取應用更廣。如何捕獲變化的資料是增量抽取的關鍵。對捕獲方法一般有兩點要求:準確性,能夠將業務系統中的變化資料按一定的頻率準確地捕獲到;效能,不能對業務系統造成太大的壓力,影響現有業務。目前增量資料抽

BI專案筆記》歷年的初煙水分均值變化分析Cube的建立

主要維度: 班組班次檢測項質檢日期(時間維度)加工客戶加工型別收購型別生產線產地菸葉級別 主要指標:慢速測定_平均值快速測定_平均值紅外測定_平均值ETL設計 需要抽取的維度表: 序號 表名 說明 備註 1 T_Departme

BI專案筆記》建立多維資料集Cube(1)

有兩個事實表,因此就有兩個度量值組,並且嚮導將為非維度鍵的事實表中的每一個數值列建立一個度量值。由於我們這裡不需要那麼多,所以只選擇部分度量值。另外要注意,度量值的名稱源於事實表中的列,所有名稱由可能相同。但是在多維資料集中,由於度量值的名稱必須是唯一的,所以嚮導會在重複的度量值名稱後新增所屬的度量值組名

BI專案筆記》挑選產出分析Cube

資料來源設定: 資料處理邏輯: --I_GBGradeID SELECT * FROM T_NPick_PkgMov WHERE I_GBGradeID NOT IN ( SELECT I_GBGradeID FROM

BI專案筆記》SSAS部署時發生的問題——元資料管理器中存在錯誤 解決辦法

在生成和部署期間出錯。是否繼續?解決辦法: 用Microsoft SQL Server Management Studio 連線Analysis Services 然後刪除多維資料庫,重新佈署。這樣就OK的。 (adsbygoogle = window.adsbygoogle

BI專案筆記》建立多維資料集Cube(2)

本節建立: 歷年的初煙水分均值變化分析Cube:區域維度:地州,專縣時間維度:年等級維度:大等級,小等級指標:水分均值資料來源檢視: 資料處理: ALTER TABLE T_QualMoisture_Middle ALTER COLUMN V_Produce_ID VARCHAR(50)

Arm DesignStart專案加速基於Linux的嵌入式設計

Arm宣佈將其DesignStart專案進一步升級,在Cortex-M0和Cortex-M3的基

【tornado】系列專案(一)之基於領域驅動模型架構設計的京東使用者管理後臺

【tornado】系列專案(一)之基於領域驅動模型架構設計的京東使用者管理後臺      本博文將一步步揭祕京東等大型網站的領域驅動模型,致力於讓讀者完全掌握這種網路架構中的“高富帥”。 一、預備知識: 1.介面: python中並沒有類似java

基於RBAC模型的許可權系統設計(Github開源專案)

計劃在Team的Github開源專案里加入許可權控制的業務功能。從而實現許可權控制。在很多管理系統裡都是有許可權管理這些通用模組的,當然在企業專案裡,許可權控制是很繁雜的。 Team的Github開源

Odoo10學習筆記三:模型(結構化的應用數據)、視圖(用戶界面設計

其他 描述 用戶界面 列表 支持 字段 界面設計 允許 學習 一:模型 1:創建模型 模型屬性:模型類可以使用一些屬性來控制它們的一些行為: _name :創建odoo模型的內部標識符,必含項。 _description :當用戶界面顯示模型時,一個方便用戶的模型記錄標題。

專案之初的模型設計與status狀態欄位

0X01 開始做一個app的時候,要先做的是流程設計與資料庫模型設計。 但做的模型設計往往是設定欄位滿足當前的需求,缺乏足夠的經驗,即使為以後的功能預留出位置,也無法考慮周全。 比如,剛開始做使用者表,關於刪除使用者的功能,一開始預想的是直接刪除使用者。等到所有功能做完了,這一個版本結束了,在下一個版本