sql-server - SQL Server Linked Server openquery for WHERE 子句
问题描述
我正在尝试编写一个查询来获取我的服务器和链接服务器之间的增量。所以我写了以下内容,直到:
Select MD5 FROM ServerA A
WHERE NOT EXISTS
(
SELECT 1
FROM [LinkedServer].[Database].[dbo].[Files] fi
WHERE A.MD5High = fi.MD5High AND A.MD5Low = fi.MD5Low
)
但是,这会将所有数据从 LinkedServer 拉到我的服务器,这会导致我的服务器用完资源。所以我的下一个尝试是在链接服务器上执行查询
Select MD5 FROM ServerA A
WHERE NOT EXISTS
(
SELECT 1
FROM OPENQUERY( [LinkedServer] , 'SELECT [LinkedServer].[Database].[dbo].[Files] fi
WHERE fi.MD5High = ' + A.MD5Low + ' AND fi.MD5Low= ' + a.MD5Low + '')
)
但是,第二个查询中的语法不正确,我想不出正确的语法。
我很欣赏任何方向
解决方案
推荐阅读
- java - Android应用尝试调用虚拟方法错误
- nginx - 安装“nginx-extras”后 NGINX 失败
- angular - 何时使用 Promise 而非 observable?
- ionic-framework - 两个图标之间的 IONIC 文本
- perl - 如何为带有散列参数的方法编写 Perl 单元测试?
- scala - 在 spark scala 中使用窗口函数删除重复记录
- python - 在报价行项目搜索中添加产品 ean13 条形码 (Odoo 8)
- android - 为什么我的应用程序徽章图标在主屏幕没有显示?
- php - 月球照明和相位角或方向
- mysql - Laravel 会话 ID 在数据库中不匹配