2013-03-19 96 views
0

我有位置的详细信息的表格: -问题与如何使用存在PL/SQL查询,不存在

Location id Manager Name    SubFunction  
    1    HR  XYZ    direct sales  
    2    IT  ABC    Gaming   
    3   HR  DEC    Agent  

Location id Lookupcode 
1   123 
2   126 
3   231 
4   222 

Subfuction_table细节: -

Lookup code Subfunction 
123   Agent 
126   Gaming 
222   Customer services 

基本上,我有两个表一个具有功能的位置,子功能定义为 ,另一个具有子功能表,子功能表具有在位置表中使用的子功能名称。

现在我必须编写一个PL/SQL查询,以便位置表中不存在的所有这些函数只显示具有“HR”的管理器。我曾尝试下面的查询: -

select Subfuntion 
from subfunction_table 
where exists      //Part a 
(select null 
from subfunction_table 

) 
and not exists 
(select null     // Partb 
from 
location 
where manger='HR') 

例如: - 在子功能表上表中有“客户服务”,这是在subfuncn表,但不是在位置,以便查询应显示子功能“客户服务”

,但我没有得到逻辑如何使用子功能名称从部分中b部分

+1

因此,您使用的是SQL Server,但语言是PLSQL而不是T-SQL? – Lamak 2013-03-19 17:39:09

+0

错误的标签..我纠正它..我使用SQL开发人员 – user2187584 2013-03-19 17:43:54

+1

功能“不在地点”表中来自哪里? – 2013-03-19 17:52:57

回答

0
SELECT * 
    FROM subfunction sf 
WHERE NOT EXISTS (SELECT 1 
        FROM function f JOIN location l USING (locationid) 
        WHERE l.manager = 'HR'); 

我这个,你在找什么?这是我从你的问题中理解的。