테이블에 특정 유형의 데이터가 포함되어 있지 않으면 테이블에서 선택할 수있는 방법이 필요합니다.SQL 서버 - 존재하지 않는 데이터 선택
예를 들어 farm
이라는 테이블과 animal
이라는 테이블이있는 경우 이제 FarmA에는 돼지와 염소가 포함되어 있고 FarmB에는 염소가 들어 있습니다. 돼지가없는 모든 농장을 선택하고 싶습니다.
내 첫 번째 시도는이 수행했다 :
SELECT f.* FROM farm f INNER JOIN animal a ON f.Id = a.FarmId WHERE a.Name <> 'pig';
을하지만 염소를 포함하지만 난 그게 돼지가있는 농장을 다시 반환 싶지 않기 때문에 이것은 여전히 FARMA 날 다시 반환합니다.
일부 서브 쿼리를 시도하고 not exists
을 사용했지만 작동하지 않습니다. 나는 이것이 내 쿼리를 올바르게 구조화 할 수 없다고 확신한다.
가 http://www.codinghorror.com/blog/archives/에서보세요 : 나는 오라클과 더 잘 알고하지만 난 확인하고는 "NOT EXISTS"구문은 같은 것 같다 조인의 다른 유형에 대한 간단한 시각적 설명은 000976.html을 참조하십시오. – adrianbanks
링크를 주셔서 감사합니다/지금은 완전한 감각을 만드는 쿼리를 참조하십시오/내가 그것을 주셔서 감사합니다 –