저는 아티스트, 밴드 및 앨범에 대한 정보를 저장하는 데이터베이스가 있으며 두 개 이상의 앨범이있는 밴드의 밴드 이름과 앨범 제목을 선택하려고합니다.하위 쿼리와 관련된 쿼리
band_id, name, year_formed
1, blink182, 1990
2, fall out boy, 1997
3, u2, 1982
4, coldplay, 1990
5, zach brown band, 2002
이 너무 어려운 문제가 보이지 않는다하지만 난 내 인생을 알아낼 수 없습니다
album_id, title, band_id
1, take off your pants and jack it, 1
2, stars, 3
3, fbgm, 3
4, reach, 3
5, yup, 4
앨범. 문제는 select 문에서 앨범 제목과 밴드 이름을 모두 가져 오는 것과 같습니다.
SELECT b.name, alb.title
FROM band as b, album as alb
WHERE exists (SELECT * FROM album as al WHERE b.bid = alb.bid)
모든 밴드 이름과 앨범 제목을 반환합니다. 내 생각 엔 하나 이상의 앨범이있는 밴드를 찾는 하위 쿼리 핸들을 사용하는 것입니다.하지만이 작업을 수행하는 방법에 대한 완전한 손실이 있습니다. 서브 쿼리는 일반적으로 반복적 인 일로 나를 던져 버렸기 때문에 개념적으로 어떻게 작동하는지에 대한 훌륭한 설명은 인정 될 것입니다. 더 하나의 제목보다 당신이 밴드를 찾고 있다면
SELECT b.name, a.title
FROM band b
JOIN album a ON b.bid = a.bid
대신 EXISTS
를 사용
성공 했습니까? – potashin