SSIS中,lookup task 对应sql 中的什么语句? 如果用sql 语句,如何来写?

0
已邀请:
2

BIWORK - 热衷于微软BI技术,技术架构和解决方案! 2015-10-06 回答

可以看下这个帖子 微软BI 之SSIS 系列 - Lookup 组件的使用与它的几种缓存模式 - Full Cache, Partial Cache.. 
 
​里面有两张表,是通过 Lookup 实现一个流程的。就我们在 SQL 查询中来考虑这样的一个案例,如果没有Lookup 要去做这种关联查询 SQL 语句怎么写,其实到最后一看还是普通的 SQL JOIN 条件。
 
比如在 Lookup 就是查找匹配项
SELECT *
FROM A
INNER JOIN B
WHERE A.KEY = B.KEY

或者 Lookup 中可能需要匹配就走一个流程,不匹配就走另外的一个流程。
那就相当于做 EXISTS 判断,类似于这样的
IF EXISTS
(
SELECT *
FROM A
LEFT JOIN B
ON A.KEY = B.KEY
WHERE B.KEY IS NOT NULL
)
UPDATE TABLE SET ... WHERE ...
ELSE
INSERT ....
具体关于 EXISTS 关键字的使用可以看看:EXISTS 关键字的语法
     

要回复问题请先登录注册