我有两个表:Table A
和Table B
。
他们都有Emp-ID
作为关键字段。
Table A
拥有10k唯一EMP-IDs
条记录。
Table B
拥有2k条唯一EMP-ID记录。
EMP-IDs
中的Table B
中的某些Table A
也存在于Table A
中。
我需要编写一个查询,列出Table B
的所有记录以及EMP-ID
not exist in Table A
Table B
的记录。我需要选择EMP_TYPE = 'Y'
select EMP_ID, EMP_TYPE
from Table A
where EMP_ID not in(
select EMP_ID from Table B
where EMP_TYPE='Y' and EMP_ID in(
select EMP_ID,EMP_TYPE from Table B
union all
select EMP_ID,EMP_TYPE from Table A
)
条记录
undefined/null
答案 0 :(得分:1)
使用union all
和not exists
:
select emp_id, emp_type
from a
union all
select emp_id, emp_type
from b
where emp_type = 'Y' and
not exists (select 1 from a where a.emp_id = b.emp_id);