하위 쿼리에서 값을 둘 이상 반환했습니다 > 기술자료

본문 바로가기
사이트 내 전체검색

기술자료

MSSQL 하위 쿼리에서 값을 둘 이상 반환했습니다

페이지 정보

댓글 0건 조회 16,210회 작성일 2013-03-05 11:48

본문

[ 문제 ]
Microsoft OLE DB Provider for SQL Server 오류 '80004005'

하위 쿼리에서 값을 둘 이상 반환했습니다. 하위 쿼리 앞에 =, !=, <, <=, >, >= 등이 오거나 하위 쿼리가 하나의 식으로 사용된 경우에는 여러 값을 반환할 수 없습니다.


[ 답변1 ]
하위쿼리 사용된 부분만 따로 조회해 보세요..결과값에 2개 이상 행이 반환되고 있을꺼에요
SubQuery에 값이 두 개 나오지 말아야 한다면 그 부분 체크해 보시고요.


[ 답변2 ]
특정 select 절의 반환값이 두 개 이상이라서 나오는 메세지


[ 답변3 ]
에러 ex)
select name, height
from userTB
where height >= (select height from userTB where mobile1 = '010')

일때 하위쿼리 값이 179, 185 두개의 값을 반환된다면
이럴때 오류가 발생한다.

select name, height
from userTB
where height >= any (select height from userTB mobile1 = '010')
                some
로 처리하면 179보다 크거나 같은 사람, 185보다 크거나 같은 사람이 줄줄이 나온다.
결국 179보다 큰 사람이 쭉 나오는데

select name, height
from userTB
where height >= all (select height from userTB where mobile = '010')

로 바꿔서 처리하면 결과는 적게 나온다.
179보다 크거나 같은 뿐만 아니라, 185보다 크거나 같은 사람을 뽑아야 하기 때문에
185보다 크거나 같은 사람이 나온다.

즉,
any, some 은 여러개의 결과 중 한가지만 만족해도 되며
all 은 두가지 다 만족해야 한다.


[ 답변4 ]
하위 쿼리 앞에 =, !=, <, <= , >, >= 등이 오거나 하위 쿼리가 하나의 식으로 사용된 경우에는 여러 값을 반환할 수 없습니다.
이 메시지는 coin 에 값이 하나만 와야 하는데..
하위쿼리의 결과 값이 둘이상이 와서 그렇습니다. 조건절을 조절하시거나 top 을 이용하시면 됩니다.


참조사이트
http://www.sqler.com/435806
http://blog.naver.com/lovefavaz/140122700901
http://www.hoons.net/board/qaaspnet/content/8521
  • 트위터로 보내기
  • 페이스북으로 보내기
  • 구글플러스로 보내기
  • 카카오톡으로 보내기

댓글목록

등록된 댓글이 없습니다.


Total 72건 1 페이지
기술자료 목록
번호 제목
72 MSSQL   588  2018-05-09 22:36  
71 MSSQL   1410  2017-12-21 09:25 ~ 2017-12-21 09:27  
70 MSSQL   1165  2017-12-07 06:35  
69 MSSQL   1198  2017-12-05 23:56 ~ 2017-12-05 23:58  
68 MSSQL   2202  2017-12-04 09:08 ~ 2017-12-07 16:22  
67 MSSQL   1133  2017-12-03 07:14  
66 MSSQL   1225  2017-11-28 14:08  
65 MSSQL   963  2017-11-26 05:27  
64 MSSQL   1530  2017-11-26 05:08  
63 MSSQL   1647  2017-11-03 10:45 ~ 2017-11-03 12:37  
62 MSSQL   2081  2017-10-29 23:12 ~ 2017-10-30 00:10  
61 MSSQL   3723  2017-09-22 18:05  
60 MSSQL   1950  2017-08-08 13:47  
59 MSSQL   2665  2017-04-02 13:19  
58 MSSQL   2282  2017-02-15 22:27  
57 MSSQL   4569  2016-12-12 20:58 ~ 2017-09-22 00:00  
56 MSSQL   3170  2016-11-25 01:06  
55 MSSQL   2649  2016-01-25 17:11  
54 MSSQL   8484  2014-09-29 11:28  
53 MSSQL   7445  2013-09-12 16:49  
게시물 검색

회원로그인

계좌이체 or 신용카드 결제하기
해피정닷컴으로 대금결제를 할 수 있습니다

접속자집계

오늘
347
어제
2,445
최대
3,174
전체
4,327,079

회사명: 해피정닷컴   사업자번호: 119-05-36414   전화: 070-7600-3500   팩스: 02-865-3528   주소: 08394 서울시 구로구 디지털로 242 한화비즈메트로1차 1502호
대표: 정창용   개인정보보호책임자: 정창용   통신판매업신고번호: 2014-서울구로-0074 [사업자등록정보확인]   건강기능식품영업신고번호 제2018-0080452호
Copyright 2001~2018 해피정닷컴. All Rights Reserved.