쿼리질문좀요 ㅠㅠㅠ
본문
1. 고객테이블 (idx, 등등등)
2. 고객사진테이블 (idx / 고객테이블 idx / 이미지)
지금 운영중인 사이트에서
[고객테이블]에 업로드된 사진은 [고객사진테이블]에서 따로 저장하고있습니다.
혹시 고객사진이 없는 자료들을 한번에 뽑아보고싶은데..어떤식으로 쿼리를 작성해야할까요..
답변 3
그냥 단순히 생각하면
select * from 고객테이블 where idx not in (select 고객테이블 idx from 고객사진테이블)
in의 select에 데이터가 엄청 많으면 안 될수도 있긴한데... 일단 이렇게 해보시죠.
그리고 아마 테이블 데이터가 1:1 매칭일거 같은데 위에 방법이 안 된다면
join을 한 다음에 사진이 없는것만 뽑아오시는것도 방법 입니다.
exists로 판단하는 겁니다
select * from 고객테일 a
where not exists ( select 'x' from 고객사진테이블 b
where a.idx = b.고객테이블idx)
로 하시면
동일조건에서 가장 빠른 속도로 처리됩니다
조인을 이용하면 될 것 같습니다
select
*
from
고객테이블
LEFT JOIN 고객사진테이블 ON
고객테이블.고객테이블idx = 고객사진테이블.고객테이블idx
WHERE
고객사진테이블.이미지 IS NULL
답변을 작성하시기 전에 로그인 해주세요.