데이터베이스 개발자 질문과 답변 게시판
데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.
select 조회 시 결과가 아래처럼 나오는데요
결과 내용이 없어도 null이나 숫자 0으로 나올 수 있는 방법이 없을까요
인서트문도 써봤지만 소용이 없네요 ㅜㅜ
Comment 6
-
쓸만한게없네(윤선식)
2015.03.25 17:12
-
minsouk
2015.03.25 17:41
걍 @@rowcount 체크해서 0이면 이거 select 0 이러면 되지 않을까 외국인 노동자 답변이 이상하다.....lmnop 인데 배열이 이상하네...쿨럭~
-
쓸만한게없네(윤선식)
2015.03.25 19:31
그렇게 하면 결과셋이 두 개 아닌가여? (첫 번째 결과는 No Rows)
-
마힐링
2015.03.26 11:01
ㅜ쓸만한게없네(윤석식)님 감사드려요 !
멋지게 해결했습니다 ^0^
-
쓸만한게없네(윤선식)
2015.03.27 17:55
많은 분들이 그렇게 쓰시긴 하지만...
저는 저녁밥이 아닙니다... OTL.
-
minsouk
2015.04.03 13:22
외국인 노동자 이지...밥은 아니쥐.....-_- ㅎㅎㅎ
1. null 이나 0이 나와야 하는 이유에 대해 먼저 생각하셔야 할 것 같습니다.
이는 결과값 자체가 없다는 사실이므로 만약 Program 에서 확인하는 경우라는 해당 건수를 체크해서 처리하는 로직을 넣으시는 게 맞을 듯 합니다.
2. 굳이 나오게 해야 한다면 다음과 같이 처리를 할 수는 있습니다만. 별로 권장하고 싶진 않네요.
CREATE TABLE #Temp
(Col1 INT,
Col2 INT
)
INSERT INTO #Temp (Col1, Col2) VALUES (1,2);
IF EXISTS (SELECT 1 FROM #Temp WHERE Col1 = 2)
BEGIN
SELECT * FROM #Temp WHERE Col1 = 2
END
ELSE
BEGIN
SELECT 0 AS Col1, 0 AS Col2 FROM #Temp
END