책 내용 질문하기
하위질위 관련
도서
2021 시나공 정보처리기사 실기
페이지
0
조회수
368
작성일
2021-04-22
작성자
탈퇴*원
SQL에서 하위질의 관련 문제의 해설을 읽다보면
첨부한 사진과 같이 = 이라고 예상했으나 답은 IN인 경우가 있습니다.
IN과 = 의 차이를 알고 싶습니다.
어느 경우 IN을 사용하고, =을 사용하나요?
둘을 사용했을 때 결과는 다른가요?
답변
2021-04-22 10:57:33
안녕하세요 길벗수험서 운영팀입니다.
'where 속성명 = (하위질의)'의 경우 하위질의의 결과가 단일값인 경우만 사용할 수 있습니다.
반면, 'where 속성명 in (하위질의)'의 경우 하위질의의 결과가 단일값인 경우에도, 다중값인 경우에도 사용할 수 있죠.
5번 문제처럼 데이터를 확인할 수 없는 경우에는 =를 사용할 수 없습니다. 하위질의 결과가 어떻게 나올지 알 수 없기 때문이죠.
사실상 '='보다는 항상 'in'을 쓴다는 생각으로 SQL문을 작성하시는 것이 안전합니다.
행복한 하루되세요 :)
-
관리자2021-04-22 10:57:33
안녕하세요 길벗수험서 운영팀입니다.
'where 속성명 = (하위질의)'의 경우 하위질의의 결과가 단일값인 경우만 사용할 수 있습니다.
반면, 'where 속성명 in (하위질의)'의 경우 하위질의의 결과가 단일값인 경우에도, 다중값인 경우에도 사용할 수 있죠.
5번 문제처럼 데이터를 확인할 수 없는 경우에는 =를 사용할 수 없습니다. 하위질의 결과가 어떻게 나올지 알 수 없기 때문이죠.
사실상 '='보다는 항상 'in'을 쓴다는 생각으로 SQL문을 작성하시는 것이 안전합니다.
행복한 하루되세요 :)