질문 : "The Bullets"라는 밴드가 녹음 된 스튜디오에서 적어도 하나의 타이틀을 녹음 한 각 아티스트의 이름을 어떻게 표시합니까?보유중인 SQL 하위 쿼리
select ar.artistname, ti.titleid from artists ar
where exists
(
select 0
from titles ti where ti.artistid = ar.artistid
and exists
(
select 0
from studios s
where s.studioid = ti.studioid
and ar.artistname = 'The Bullets'
)
);
하지만, I는에서 "적어도 하나 개의 타이틀을 기록하고 각각의 아티스트"이 부분을 만족 COUNT에게 (ti.titleid)> 0을 갖는 포함해야
I는 다음 질의를 공식화 질문.
적어도 하나의 스튜디오를 녹음 한 "The Bullets"라는 아티스트 이름과 어울리는지 확실하지 않습니다.
Tracks
------
TitleID, ArtistID, StudioID
스튜디오 표는 folllowing resmebles :
Artists
-------
ArtistID, ArtistName, City
트랙 테이블은 다음 resmebles :
Studios
-------
StudioID, StudioName, Address
나는 또한 해야
연예인 테이블은 다음과 resmebles 조인을 사용할 수 없도록 지정, 예를 들어, 성능 선호도. 총알이
SELECT StudioID
FROM Sudios S
JOIN Tracks T ON S.StudioID = S.StudioID
JOIN Artists A ON T.ArtistID = A.ArtistID AND A.ArtistName = 'The Bullets'
모든 아티스트를 기록
검색어가 만족 스럽다면 'HAVING COUNT (*)> 0'이 필요하지 않습니다. 한 행이 존재하면 0보다 큽니다. 그렇지 않습니까? –
음, 총알이 밴드가있는 스튜디오에서 최소한 하나의 타이틀을 녹음했는지 알아야합니다. 해당 구현으로 편집되었습니다. 맞습니까? 너 말 할래? – user2948897
조인을 사용할 수 없습니까? 왜? 어떤 퍼즐/숙제인가요? –