2016-12-07 42 views
0

我无法删除表A的行(其键为WO_NO和ROW_NO)。 我写了下面的查询,但给出错误说,无效的关系操作。使用select语句删除表中观察其主键的记录

这就是我试过的。

begin 

DELETE FROM A 
WHERE WO_NO,ROW_NO in (SELECT WO_NO,ROW_NO 
FROM G1614617_1 
MINUS 
SELECT WO_NO,ROW_NO 
FROM hirplk_test1); 

dbms_output.put_line(SQL%ROWCOUNT); 

end; 
/

select查询返回行值WO_NO和ROW_NO。但我无法删除选项卡A中的记录。有人可以纠正我。

回答

2

你需要把括号之间的两列,如果你想他们两个列子查询比较:

DELETE FROM A 
WHERE (WO_NO,ROW_NO) in (SELECT WO_NO,ROW_NO 
         FROM G1614617_1 
         MINUS 
         SELECT WO_NO,ROW_NO 
         FROM hirplk_test1);