2012-06-15 276 views
0

我想做排除加盟,如果行有(相同的工具和相同的配方) 当我运行下面的代码PL/SQL排除两个条件加入

select a.tool, a.recipe 
from dual a 
where a.tool NOT IN (select b.tool from daul2 b) 
and a.recipe NOT IN (select b.recipe from dual2 b) 

它,首先,过滤器工具然后食谱,但我希望程序在同一时间检查它。

有没有办法同时检查两列?

+0

因为这是Oracle中的一个特殊表,所以选择除“dual”之外的示例表名称可能是个好主意。 –

回答

3

我不完全相信我明白你在问什么。我的猜测是,你想要么

SELECT a.tool, a.recipe 
    FROM table1 a 
WHERE (a.tool, a.recipe) NOT IN (SELECT b.tool, b.recipe 
            FROM table2 b) 

SELECT a.tool, a.recipe 
    FROM table1 a 
WHERE NOT EXISTS(SELECT 1 
        FROM table2 b 
        WHERE a.tool = b.tool 
         AND a.recipe = b.recipe) 

如果这不是你想要的,你可以发布一些示例数据,并解释你正在努力排除和包括哪些?