를 조회 쿼리?는 데이터베이스 스키마 감안할 때
-1
A
답변
0
. 그런 다음 조인 만하면됩니다. Supply
과 Parts
으로 두 번 가입해야합니다. 한 번은 Apple 제품을 찾고 두 번째 제품은 비 Apple 제품을 제외합니다. LEFT JOIN
당신이 ON
조항이 아닌 WHERE
절에 두 번째 테이블의 제한을 넣어
SELECT distinct c.name, c.province
FROM Customer AS c
JOIN Supply AS s1 ON s1.cid = c.cid
JOIN Parts AS p1 ON p1.pid = s1.pid
LEFT JOIN Supply AS s2 ON s2.cid = c.cid
LEFT JOIN Parts AS p2 ON p2.pid = s2.pid AND p2.producer != 'Apple'
WHERE p1.producer = 'Apple' AND p2.pid IS NULL
알 수 있습니다. 이 부분에 대한 자세한 내용은 Return row only if value doesn't exist을 참조하십시오.
0
Apple 제품만을 구매하신 고객이 필요하십니까?
한 가지 가능한 솔루션은 조건 집합을 기반으로합니다 : 당신은 어떤 비 애플 제품을 구입하지 않은 고객을 찾기 위해 LEFT JOIN/NULL
패턴을 사용할 수 있습니다
Select c.cname, c.Province
From Customer c
join
(-- this is not a Subquery, it's a Derived Table
Select s.CId -- assuming there's a CId in Supply
from Supply s
join Part p
on p.pId = s.pId
group by s.CId
-- when there's any other supplier this will return 1
having max(case when p.Producer = 'Apple' then 0 else 1 end) = 0
) as p
on p.CId = c.CId
관련 문제
- 1. MySQL의 쿼리는이 스키마 감안할 때 각 부서
- 2. 는 다음과 같은 HTML을 감안할 때
- 3. 는 Linq는이 대답을 감안할 때 확장
- 4. 는 다음과 같은 HTML을 감안할 때
- 5. 는`같은 테이블을 감안할 때 EXISTS`
- 6. 는 다음과 같은 데이터 구조를 감안할 때
- 7. 는 NullReferenceException이 XML 문서 감안할 때 XML
- 8. 는 다음과 같은 구조를 감안할 때 VB.NET
- 9. 는 간 차별화 테이블을 감안할 때 MySQL의
- 10. 는 XML을 감안할 때 색슨 XPathSelector
- 11. 는 다음 구현을 감안할 때 파이썬 목록
- 12. 는 XML 문서를 감안할 때, 당신은
- 13. XML-스키마 키/다음 XML-조각을 감안할 때 keyref 문제
- 14. 다른 데이터베이스 스키마 변환기에 대한 데이터베이스 스키마
- 15. 데이터베이스 스키마
- 16. 몽구스 스키마 속성은 여전히 다음과 같습니다 스키마를 감안할 때
- 17. 서식 데이터베이스 스키마
- 18. 파일로 내보낼 때 SQL 데이터베이스 스키마 비교
- 19. 데이터베이스 스키마, 기본값은 NOW()
- 20. 데이터베이스 스키마 혼동
- 21. HR-XML 데이터베이스 스키마
- 22. 레일 업데이트 데이터베이스 스키마
- 23. SQL Server 데이터베이스 스키마
- 24. 제품 비교 데이터베이스 스키마
- 25. 부모와 자식 데이터베이스 스키마
- 26. .NET. 동적 데이터베이스 스키마
- 27. 데이터베이스 스키마 표준화
- 28. 다중 데이터베이스 스키마 내보내기
- 29. 즉시 데이터베이스 스키마 만들기
- 30. 데이터베이스 게임 메시징 스키마
귀하의 질의가 나에게 잘 들립니다. 왜 그것을 다시 쓰고 싶습니까? – Rahul