我正在使用 SQL Server 2008 和 Talend
我面临的问题是,我在两个不同的数据库中有两个表,它们具有相同的字段,我正在尝试查询它们并满足某些条件。
用户具有查看表和所有表的正确权限。
这两个表我只需要几个字段,所以我创建了视图以使生活更轻松:Db USA 我创建了一个视图
(在视图中)
"SELECT IDCUST, NAMECUST,CODETERM,AMTCRLIMT,DATELASTIV,AMTBALDUEH
FROM TABLE!
WHERE COUNTRYCODE = 'USA' OR COUNTRYCODE ="U.S.A" //this is for USA server
only the other doesn't have the WHERE clause.
现在我想做的是用我的另一个数据库('MAIN')查询这个视图。
标准是如果 IDCUST 相同,那么我只想要“美国”数据库中的行。
我试过了:
SELECT *
FROM USA.dbo.VIEWUSA
UNION
SELECT *
FROM MAIN.dbo.VIEWMAIN
WHERE MAIN.dbo.IDCUST <> USA.dbo.VIEWUSA.IDCUST
尽管说 USA.dbo.VIEWUSA.IDCUST 不合适,但它有一个错误。
我尝试将其作为 JOIN,但我的连接根本不起作用(最大行数约为 6k,在我停止之前它以 100k 的速度查询。)