programing

내부 조인 쿼리의 반대쪽

lastmoon 2023. 8. 5. 10:52
반응형

내부 조인 쿼리의 반대쪽

표 12 열: ID, 이름

표 22 열: ID, 이름

표 1에서 표 2에 없는 이름을 표시하는 쿼리란 무엇입니까?따라서 표 2에 있는 표 1의 모든 이름을 필터링하면 결과 쿼리가 제공됩니다.필터링이 이름이 아닌 ID에 있습니다.

Select * from table1
left join table2 on table1.id = table2.id
where table2.id is null

이것은 그것보다 더 잘 수행될 것입니다.left join...is null판본비교는 여기와 여기를 참조하십시오.

select t1.id, t1.name
    from table1 t1
    where not exists(select null from table2 t2 where t2.id = t1.id)

이 쿼리 사용

select
t1.*
from table1 t1
left outer join table2 t2
on t1.id=t2.id
where t2.id is null

이것은 t1의 모든 것을 t2에 존재하는 모든 것에 결합함으로써 작동합니다. where 절은 t2에 존재하지 않는 모든 레코드를 필터링합니다.

SELECT Table1.ID, Table1.Name, Table2.ID 
FROM Table1 LEFT OUTER JOIN Table2 ON Table1.ID = Table2.ID 
WHERE Table2.ID IS NULL 

그 정도면 될 것 같아요.

다음과 같이 시도:

select t1.*
from table1 as t1
where t1.id not in 
  (select distinct t2.id from table2 as t2);

언급URL : https://stackoverflow.com/questions/4044919/opposite-of-an-inner-join-query

반응형