0

此语句返回错误 00920 - 无效的关系运算符。

我确定这是我的语法,但我没有看到它。如果任何代码可以查看它并指出我做对了,我将不胜感激。

谢谢

DELETE FROM TABLE15 p

  WHERE (p.item_id, p.product_id) IN

           (SELECT S.item_id, S.product_id )

              FROM TABLE14 S);
4

2 回答 2

2

你的括号是狡猾的...

DELETE FROM TABLE15 p
  WHERE (p.item_id, p.product_id) IN
           (SELECT S.item_id, S.product_id
              FROM TABLE14 S
                   );

您需要删除额外的一个。该错误是in由于额外的括号导致解析不正确引起的。

于 2012-06-15T19:32:44.310 回答
0

尝试这个:

DELETE FROM table15 p
WHERE  ( p.item_id IN (SELECT S.item_id
                       FROM   table14 S) )
        OR (( p.product_id IN (SELECT S.product_id
                               FROM   table14 S) ));  
于 2012-06-15T19:31:20.830 回答