728x90
문제
Museum of Modern Art Collection 데이터셋은 미국 뉴욕의 근현대 미술관인 MoMA의 작품과 작가 정보를 담고 있습니다.
artists 테이블에는 MoMA에 등록된 작가들의 정보가 있고, artworks_artists 테이블에는 각 작품에 참여한 작가들의 정보가 들어있습니다.
하나의 작품에 여러 명의 작가가 참여할 수 있기 때문에, artworks_artists 테이블의 artwork_id 컬럼과 artist_id 컬럼은 N:M 관계입니다.
MoMA에 등록된 작가이지만 전시된 작품이 없는 작가들의 마지막 작품을 전시하는 기획전을 준비하려 합니다.
MoMA에 등록되어있고, 현재 살아있지 않은 작가 중 MoMA에 등록된 작품이 없는 작가의 ID와 이름을 출력하는 쿼리를 작성해주세요.
쿼리 결과에는 아래 컬럼이 있어야 합니다.
artist_id - 작가 ID
name - 작가 이름
https://solvesql.com/problems/artists-without-artworks/
문제 풀이
SELECT A.artist_id,
A.name
FROM artists AS A
LEFT JOIN artworks_artists AS B
ON A.artist_id = B.artist_id
WHERE A.death_year IS NOT NULL -- 살아있지 않은 작가
AND B.artist_id IS NULL; -- MoMA에 작품이 등록되지 않은 작가
SQL을 독학하시는 분들에게 도움이 되길 바라며,
혹 더 좋은 방법이 있거나 오류가 있다면 편하게 말씀 부탁드립니다.
728x90