我需要帮助找出解决问题的方法。
1。我有4张桌子
a. CLientdetails
b. ClientAccountDetails
c. ClientExistingData
d. ClientNotExistindata.
Clinet详细信息包含与客户端名称相关的数据,startdate,endingDate
ClientAccountDetails包含与特定客户相关的数据(即与其姓名,账户状态,资金相关的多个账户)
使用SSIS包我将Excel表格中的数据(与excel表格相关的数据是ClientAccountDetails)导入另一个名为IMPORTClientDetails的表格。
使用ssis包将所有数据导入表中。我会写一些查询,根据客户名称将其移入ClientAccountDetails表。
2。我的问题是
如果ClientDetails表中不存在IMPORTClientDetails的客户端名称,我希望将数据移动到ClientNotExistindata
如果IMPORTClientDetails中的客户端名称存在,那么我想将其移动到ClientAccountDetails
答案 0 :(得分:1)
这可以通过两个简单的INSERT / SELECT语句来完成。
INSERT INTO ClientAccountDetails(COLUMN1,COLUMN2, ETC)
SELECT COLUMN3,COLUMN4, ETC
FROM IMPORTClientDetails ICD
WHERE ICD.Client IN (SELECT Client FROM ClientDetails);
INSERT INTO ClientNotExistindata(COLUMN1,COLUMN2, ETC)
SELECT COLUMN3,COLUMN4, ETC
FROM IMPORTClientDetails ICD
WHERE ICD.Client NOT IN (SELECT Client FROM ClientDetails);
答案 1 :(得分:1)
在SSIS中,您可以使用查找任务来检查IMPORTClientDetails中导入的ClientName行是否存在于ClientDetails中 - 如果没有匹配,则可以将它们发送到ClientNotExistindata。然后可以将匹配的行发送到ClientAccountDetails。