SQL查询用户在表中有一条记录,但没有另一条记录

时间:2013-09-19 13:48:05

标签: sql

我有一个包含员工类型代码的表,我正在尝试返回所有没有特定LeaveType的用户

示例:

EmployeeNO LeaveType
---------------------    
1111       Personal
1111       Vacation
1111       Sick Bank
2222       Personal
2222       Vacation
3333       Personal
3333       Vacation

所以我想查询所有用户并返回Sick Bank

中的用户列表

2 个答案:

答案 0 :(得分:0)

获得病假银行

SELECT * FROM table1 WHERE leaveType = 'Sick Bank'

获得非病假银行

SELECT * FROM table1 WHERE leaveType <> 'Sick Bank'

答案 1 :(得分:-1)

让员工获得特定的休假类型是前进的

select employeeNO from table1 where leaveType = 'Sick Bank'

如果员工有多个休假类型,则使用&lt;&gt;进行查询可以为员工返回多行,即使他们确实有“病假银行”行。

select employeeNO from table1 
where employeeNo not in (select employeeNO from table1 where leaveType = 'Sick Bank')