sql에서 where문 작성시.. 궁금한게있어요..

select 문에서 'as'로 컬럼이름을 부여한 것을 where 조건에 넣을 수 없는데 다른 방법이 있을까요??
일단은 where문에 as 전의 case문을 다 적었는데...

아래는 제가 코딩하다가 생긴 예입니다..


select
(CASE WHEN PRIOR_DTIME IS NOT NULL THEN
     (CASE WHEN DATEPART(DW, PRIOR_DTIME) IN (2,3) THEN DATEDIFF(dd,REQ_DTIME,PRIOR_DTIME) -2
      ELSE DATEDIFF(dd,REQ_DTIME,PRIOR_DTIME) END)
WHEN PRIOR_DTIME IS NULL AND COM_DTIME IS NOT NULL THEN
      (CASE WHEN DATEPART(DW, COM_DTIME) IN (2,3) THEN DATEDIFF(dd,REQ_DTIME,COM_DTIME) -2
       ELSE DATEDIFF(dd,REQ_DTIME,COM_DTIME) END)
ELSE NULL END) as PPPP,  --이부분
* FROM CS_CASE

 WHERE

-- 1) 안되는 조건 :
PPPP > 2

-- 2) 되는 방법 : case문 똑같이 다 써주기..
(CASE WHEN PRIOR_DTIME IS NOT NULL THEN
(CASE WHEN DATEPART(DW, PRIOR_DTIME) IN (2,3) THEN DATEDIFF(dd,REQ_DTIME,PRIOR_DTIME) -2 ELSE DATEDIFF(dd,REQ_DTIME,PRIOR_DTIME) END)
WHEN PRIOR_DTIME IS NULL AND COM_DTIME IS NOT NULL THEN
(CASE WHEN DATEPART(DW, COM_DTIME) IN (2,3) THEN DATEDIFF(dd,REQ_DTIME,COM_DTIME) -2 ELSE DATEDIFF(dd,REQ_DTIME,COM_DTIME) END)
ELSE NULL END)
 >2

|

댓글 3개

SELECT * FROM (
select
(CASE WHEN PRIOR_DTIME IS NOT NULL THEN
(CASE WHEN DATEPART(DW, PRIOR_DTIME) IN (2,3) THEN DATEDIFF(dd,REQ_DTIME,PRIOR_DTIME) -2
ELSE DATEDIFF(dd,REQ_DTIME,PRIOR_DTIME) END)
WHEN PRIOR_DTIME IS NULL AND COM_DTIME IS NOT NULL THEN
(CASE WHEN DATEPART(DW, COM_DTIME) IN (2,3) THEN DATEDIFF(dd,REQ_DTIME,COM_DTIME) -2
ELSE DATEDIFF(dd,REQ_DTIME,COM_DTIME) END)
ELSE NULL END) as PPPP,
* FROM CS_CASE

) FROM TMP WHERE PPPP > 2
감사합니다 . select로 묶어주면 되는군요
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

태그 필터 (최대 3개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
12년 전 조회 2,657
12년 전 조회 4,302
12년 전 조회 3,633
12년 전 조회 2,058
12년 전 조회 8,314
12년 전 조회 3,132
12년 전 조회 3,345
12년 전 조회 2,439
12년 전 조회 4,104
12년 전 조회 2,007
12년 전 조회 1,770
12년 전 조회 2,386
12년 전 조회 1,948
12년 전 조회 2,639
12년 전 조회 1,960
12년 전 조회 2,404
12년 전 조회 2,510
12년 전 조회 1,882
12년 전 조회 2,125
12년 전 조회 5,776
12년 전 조회 2,212
12년 전 조회 1,520
12년 전 조회 1,880
12년 전 조회 3,029
12년 전 조회 1,662
12년 전 조회 1,944
12년 전 조회 2,347
12년 전 조회 1,750
12년 전 조회 1,056
12년 전 조회 2,228
12년 전 조회 1,841
12년 전 조회 8,228
12년 전 조회 2,745
12년 전 조회 2,532
12년 전 조회 2,585
12년 전 조회 3,116
12년 전 조회 1,169
12년 전 조회 4,271
12년 전 조회 1,912
12년 전 조회 7,004
12년 전 조회 1,547
12년 전 조회 1,564
12년 전 조회 1,635
12년 전 조회 1,224
12년 전 조회 3,539
12년 전 조회 1,990
12년 전 조회 2,033
12년 전 조회 1,541
12년 전 조회 3,267
12년 전 조회 2,224
12년 전 조회 997
12년 전 조회 4,145
12년 전 조회 1,576
12년 전 조회 1,344
12년 전 조회 1,764
12년 전 조회 6,087
12년 전 조회 1,707
12년 전 조회 3,373
12년 전 조회 2,802
12년 전 조회 1,054
12년 전 조회 3,494
12년 전 조회 1,921
12년 전 조회 1,830
12년 전 조회 1,932
12년 전 조회 3,875
12년 전 조회 2,662
12년 전 조회 4,284
12년 전 조회 9,175
12년 전 조회 4,731
12년 전 조회 4,335
12년 전 조회 1,946
12년 전 조회 1,988
12년 전 조회 3,722
12년 전 조회 4,579
12년 전 조회 4,964
12년 전 조회 2,210
12년 전 조회 1,868
12년 전 조회 1,458
12년 전 조회 1,532
12년 전 조회 3,323
12년 전 조회 3,313
12년 전 조회 1,822
12년 전 조회 3,373
12년 전 조회 1,842
12년 전 조회 9,100
12년 전 조회 2,099
12년 전 조회 4,328
12년 전 조회 6,975
12년 전 조회 2,131
12년 전 조회 3,416
12년 전 조회 1,143
12년 전 조회 1,838
12년 전 조회 1,728
12년 전 조회 1,905
12년 전 조회 3,881
12년 전 조회 1,658
12년 전 조회 2,411
12년 전 조회 1,847
12년 전 조회 1,479
12년 전 조회 1,922