【发布时间】:2015-01-23 13:59:55
【问题描述】:
我正在尝试删除主文件中存在的记录,其中帐号(由三个字段 mn_no、sb_no 和 dp_no 组成)不在交易表中。因为帐号可能在一个或多个事务表中,所以我需要测试它是否存在于所有事务表中。当我运行以下查询时,MS-SQL 在第 1 行附近返回一个不正确的语法错误。
DELETE
FROM SYACTFIL_SQL a
WHERE NOT EXISTS (
SELECT b.mn_no
,b.sb_no
,b.dp_no
FROM gltrxhst_sql b
WHERE a.mn_no = b.mn_no
AND a.sb_no = b.sb_no
AND a.dp_no = b.dp_no
)
AND NOT EXISTS (
SELECT b.mn_no
,b.sb_no
,b.dp_no
FROM gltrxfil_sql b
WHERE a.mn_no = b.mn_no
AND a.sb_no = b.sb_no
AND a.dp_no = b.dp_no
)
AND a.mn_no <> '00000000'
【问题讨论】:
标签: sql-server sql-delete