我有以下代码。
INSERT INTO [dbo].[Employees_Dim] ([EmpNo], [EmpName])
SELECT DISTINCT st.[EmpNo], [EmpName]
FROM [dbo].[EEMasterData] st
我想从主表中取出两列来创建一个Employee Dimension。 (这将与来自此主表的其他维度重复。)
我希望能够在SSIS包中运行脚本,该包将查看主数据,引用Employee_Dim并仅根据其员工编号添加新员工。
我知道我遗失的东西只是不知道是什么。
更新:我遇到的问题是,我应该在上面的脚本中添加什么内容,只使用EmpNo作为密钥,将EEMasterData表中新添加的员工插入EmployeeDim。
答案 0 :(得分:4)
......只添加新员工......
如果这是您遇到的问题,请在维度表中仅选择尚不存在的条目:
INSERT INTO [dbo].[Employees_Dim] ([EmpNo], [EmpName])
SELECT DISTINCT st.[EmpNo], [EmpName]
FROM [dbo].[EEMasterData] st
WHERE st.[EmpNo] NOT IN (SELECT EmpNo FROM Employees_Dim)
(假设EmpNo对每位员工都是唯一的)