메뉴 바로가기 검색 및 카테고리 바로가기

한빛미디어

뇌를 자극하는 SQL Server

뇌를 자극하는 SQL Server 질의응답 게시판입니다.

any,all 하위쿼리티 질문

2015-10-25

|

by sql초보

1203

뇌자극 sql 2008 223페이지 비타민퀴즈

질문1.

주소가 서울이면서 동시에 국번이11인 회원과 키가 같은 회원의 정보를 출력하는 sql을 작성하자.

이답은

select*from usertbl
where height = any(select height from usertbl where addr = 서울 and mobile1 = 11) 인데

이것은 즉

김용먼 서울 011 177
유재삭 서울 011 178
이휘저 서울 011 180

이 세사람의 키와 같은사람(ANY 절이니 177,178,180 3개의 쿼리티중에 한개의 쿼리티만 만족해도됨)이 출력되는
것인데

쿼리를 실행해보니
김용먼 서울 011 177
유재삭 서울 011 178
이휘저 서울 011 180
남히석 충남 016 180  <- 이놈이 180이니 3가지 쿼리중에 1가지를 충족해서 추가되었는데

원래대로라면

남히석만 출력되야 정상이지않나요?

즉 김용먼,유재삭,이휘저의 키(177,178,180)는 조건이니
남히석의 정보만 출력되야 정상이 아닌가 싶습니다.


질문2.
select*from usertbl
where height > all(select height from usertbl where addr = 서울 and mobile1 = 11)
제가 한번 any 대신에 all과 = 대신에 >를 써보앗습니다.
이렇게 되면 이문장해석이
"주소가 서울 이면서 국번이 011인 회원과 키가 큰사람(177,178,180 세가지 쿼리티 만족 즉 180보다 큰사람)을 출력하시오"

가되니

키가 181이상인 사람이 출력되는게 맞나요?
댓글 입력
자료실