where 절에서 컬럼들 0이 아닌 것들을 출력할때 0 6 8,353

by 알렌 [2012.09.12 11:37:49]


안녕하세요.
질문좀 드리고 싶습니다.

만약에 금액 테이블이 이와같이 있습니다.
Sal
AN01   AN02   AN03   AN04   AN05
   0          0         0         0         0   
  500     500       100      200      0
 -100        0         0        100      0
  200        0         0         0         0


아래와 같이 where 절에 5개 값에서 모두 0인 Row 만 출력되지 않도록 하고 싶습니다.
Sal
AN01   AN02   AN03   AN04   AN05 
  500     500       100      200      0
 -100        0         0        100      0 
  200        0         0         0         0  

제가 안되는 머리를 굴린다고 5개를 다 더했을때 0인것은 출력되지 않도록 해봤습니다.
Select *
from Sal
Where 1=1
and  AN01+ AN02+ AN03+ AN04+ AN05 != 0  ;

이렇게 하니까 문제는 아래와 같이 -100 있고 100 있는 Row가 0 이되서 출력되야 하는데 안되더라구요.
Sal
AN01   AN02   AN03   AN04   AN05 
  500     500       100      200      0
  200        0         0         0         0   
제가 쉬운건데 생각이 이상하게 굳어 있어서 안되는것 같습니다.
부탁드릴게요.^^
by 부쉬맨 [2012.09.12 13:07:18]
select
* from
select
sum(a+b+c+b+d) sum from table
) where sum > 0

by 손님 [2012.09.12 13:26:05]
Select *
from Sal
Where 1=1
and (AN01 !=0
  or AN02 !=0
  or AN03 !=0
  or AN04 !=0
  or AN05 !=0)

by 손님 [2012.09.12 13:31:15]

SELECT * FROM SAL
WHERE AN01||AN02||AN03||AN04||AN05 != '0000'

by 손님 [2012.09.12 13:31:41]
 SELECT * FROM SAL
WHERE AN01||AN02||AN03||AN04||AN05 != '00000'

컬럼이 5개라 0이 5개여야 겠네요 ;;

by 마농 [2012.09.12 13:34:13]

WHERE NOT( 0 = ALL(an01, an02, an03, an04, an05) )
WHERE 0 != ANY(an01, an02, an03, an04, an05)


by kj2hw [2012.09.12 13:35:27]

select * from sal
where AN01 not in(0)
or AN02 not in(0)
or AN03 not in(0)
or AN04 not in(0)
or AN05 not in(0)

이건 어떨까요
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입