PGR21.com
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다.
통합 규정을 준수해 주십시오. (2015.12.25.)
Date 2019/11/05 14:08:30
Name Inglesina
Subject [질문] SQL 질문입니다.
아주 초급 SQL 을 공부하고 있습니다.

Table A 에는 영화감독의 일련번호, 이름, 성별 등등이 들어있고, primary key 는 일련번호로 되어 있습니다.

Table A, columns
등록번호 int(11) PK
이름 varchar(20)
성별 enum('남','여')

Table B 에는 영화의 일련번호, 제목, 감독, 배우 등이 들어있고, 이 중 감독, 배우는 foreign key 로 Table A 의 일련번호로 들어와 있습니다.

영화코드번호 int(11) PK
제목 varchar(45)
감독_등록번호 int(11)
배우_배우번호 int(11)

이 중 영화감독의 이름이 '봉준호' 인 감독명을 찾고자 한다면 어떻게 하는 것이 좋을까요?

SELECT 제목 FROM B WHERE 감독_등록번호 = 1; 이라고 하면 결과가 제대로 나오는데,
제가 원하는 것은 감독의 등록번호로 조회하는 것이 아니라, 이름을 통해 조회하는 것이라서 아래와 같이 짜보면

SELECT 제목 FROM B, A WHERE A.이름 = '봉준호'; 라고 하면 B 테이블의 제목이 모두 나열됩니다.
불리언으로 받는 것 같은 느낌인데요.. 혹시 해결방법이 있을지요? 부탁드립니다. 감사합니다. ^^

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
The Normal One
19/11/05 14:14
수정 아이콘
조인이나 서브쿼리 둘 중 편한걸 이용하시면 되겠네요

select 제목 from A where 감독_등록번호 in (select 등록번호 from B where 이름 = '봉준호')
테스트는 못해봤는데 이런 식이면 나올거 같아요.
19/11/05 14:18
수정 아이콘
서브쿼리
SELECT * FROM B WHERE 감독_등록번호=(SELECT 등록번호 FROM A WHERE 이름='봉준호');

조인
SELECT B.* FROM B LEFT JOIN A ON B.감독_등록번호=A.등록번호 WHERE A.이름='봉준호';

둘 중 편하신 형태로 하시면 될 것 같습니다.
19/11/05 14:48
수정 아이콘
(수정됨) SELECT b.영화제목 FROM Table A as a, Table B as b WHERE a.등록번호 = b.감독_등록번호 AND a.이름 = "봉준호";

검색하려는 2개의 테이블을 a,b라고 지정해주고, a와 b의 키(a 테이블의 pk, b 테이블의 외래키)가 같은것 중 감독이름이 봉준호 인것만 뽑아내는 쿼리입니다. 작성하신 쿼리 (SELECT 제목 FROM B, A WHERE A.이름 = '봉준호';) 는 A테이블과 B테이블의 키를 비교하는 쿼리가 빠져있으므로 당연히 몽땅 불러오게됩니다.
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
139209 [질문] 초고층, 초대형 주상복합을 짓는다면 어떨까요? [14] AKbizs3748 19/11/06 3748
139208 [질문] ios 버전 다운그레이드/롤백 가능한가요? [5] RookieKid3500 19/11/06 3500
139206 [질문] MSI 보드 불량 의심으로 질문 드립니다. [7] Sona7665 19/11/06 7665
139205 [질문] 병원 영문진단서가 많이 희귀한 건가요? [7] 프로미스나인5049 19/11/06 5049
139204 [질문] 항공권 취소 및 환불 문의입니다. [6] 송해나3745 19/11/05 3745
139203 [질문] 크롬 질문.. [1] Dwyane3097 19/11/05 3097
139202 [질문] 갤럭시탭 s5e 세일해서 샀는데 활용방법좀 알려주세요 [5] 진리4937 19/11/05 4937
139201 [질문] 파닭 어떤 방식으로 드세요? [8] 포이리에3659 19/11/05 3659
139200 [질문] 디아블로 시리즈가 연령대별로 바뀐 분이 있나요? [21] 아싸라비아똥구멍5643 19/11/05 5643
139199 [질문] 동네 헬스장 vs 번화가 헬스장 [24] 삭제됨5175 19/11/05 5175
139198 [질문] 피지알 음악학원 도와주세요! (노래를 찾습니다2) [3] 김유라2601 19/11/05 2601
139197 [질문] <농담>만큼 재밌는 소설 추천 부탁드립니다. [9] 하아위2565 19/11/05 2565
139196 [질문] 겨울에 곤충들은 어떻게 살아남나요? [6] CoMbI COLa3129 19/11/05 3129
139195 [질문] [LOL] G2전 레오나 질문 [2] ELESIS3107 19/11/05 3107
139194 [질문] [MLB] 푸홀스 나이 관련 루머 질문입니다. [7] 커티삭4175 19/11/05 4175
139193 [질문] T1 굿즈를 사고 싶은데 여기 이거 공식 상품 맞나요? [8] Lelouch6207 19/11/05 6207
139192 [질문] 을지로에 와인바 추천해주세요 [2] 바밥밥바3379 19/11/05 3379
139191 [질문] 이마 깐 머리스타일 추천 해주세요 [19] 여섯넷백4886 19/11/05 4886
139190 [질문] 시나 시집 추천 부탁드려요. [7] 쉴더2772 19/11/05 2772
139189 [질문] 저장공간236gb/임시파일196gb(!!)안지워지고 증식중입니다 [7] 별빛서가8488 19/11/05 8488
139187 [질문] 마라 거부반응? 질문입니다 [13] 사이퍼4125 19/11/05 4125
139186 [질문] 집에서 4mm 정도 굵기의 녹슨 쇠막대를 절단하는 방법? [11] KeepLight3852 19/11/05 3852
139185 [질문] 할만한 턴제 게임 없을까요? [20] Knightmare7943 19/11/05 7943
목록 이전 다음
댓글

+ : 최근 1시간내에 달린 댓글
+ : 최근 2시간내에 달린 댓글
맨 위로