我真的不愿意发布这个,因为我觉得这是一个常见问题,但我似乎找不到适用于这种情况的答案......(也许我只是一个非常糟糕的谷歌用户)。
我有两个相同的表(按列,而不是数据),table1 和 table2。我希望删除 table1 中复合键 (col1, col2) 存在于两个表中的记录。这是我所拥有的,这对我来说似乎是正确的,但会引发错误。
DELETE FROM Table1
WHERE (**Col1**, Col2) IN
(SELECT Col1, Col2
FROM Table1 a
JOIN Table2 b
ON a.Col1 = b.Col1
AND a.Col2 = b.Col2)
错误:
消息 4145,级别 15,状态 1,第 212 行 在预期条件的上下文中指定的非布尔类型表达式,靠近“,”。
我在*
具有“红色错误曲线”的代码部分周围放置了两个。