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,822
12년 전 조회 4,413
12년 전 조회 3,746
12년 전 조회 2,185
12년 전 조회 8,435
12년 전 조회 3,243
12년 전 조회 3,473
12년 전 조회 2,543
12년 전 조회 4,211
12년 전 조회 2,122
12년 전 조회 1,877
12년 전 조회 2,510
12년 전 조회 2,069
12년 전 조회 2,745
12년 전 조회 2,060
12년 전 조회 2,506
12년 전 조회 2,621
12년 전 조회 1,980
12년 전 조회 2,235
12년 전 조회 5,886
12년 전 조회 2,318
12년 전 조회 1,636
12년 전 조회 1,991
12년 전 조회 3,129
12년 전 조회 1,774
12년 전 조회 2,022
12년 전 조회 2,453
12년 전 조회 1,834
12년 전 조회 1,157
12년 전 조회 2,337
12년 전 조회 1,949
12년 전 조회 8,388
12년 전 조회 2,837
12년 전 조회 2,638
12년 전 조회 2,687
12년 전 조회 3,274
12년 전 조회 1,286
12년 전 조회 4,392
12년 전 조회 2,029
12년 전 조회 7,146
12년 전 조회 1,662
12년 전 조회 1,670
12년 전 조회 1,758
12년 전 조회 1,352
12년 전 조회 3,651
12년 전 조회 2,117
12년 전 조회 2,151
12년 전 조회 1,656
12년 전 조회 3,417
12년 전 조회 2,342
12년 전 조회 1,111
12년 전 조회 4,310
12년 전 조회 1,690
12년 전 조회 1,434
12년 전 조회 1,880
12년 전 조회 6,201
12년 전 조회 1,820
12년 전 조회 3,470
12년 전 조회 2,918
12년 전 조회 1,168
12년 전 조회 3,612
12년 전 조회 2,049
12년 전 조회 1,950
12년 전 조회 2,053
12년 전 조회 3,969
12년 전 조회 2,776
12년 전 조회 4,391
12년 전 조회 9,289
12년 전 조회 4,844
12년 전 조회 4,466
12년 전 조회 2,059
12년 전 조회 2,102
12년 전 조회 3,854
12년 전 조회 4,680
12년 전 조회 5,083
12년 전 조회 2,316
12년 전 조회 1,987
12년 전 조회 1,560
12년 전 조회 1,641
12년 전 조회 3,433
12년 전 조회 3,414
12년 전 조회 1,944
12년 전 조회 3,483
12년 전 조회 1,955
12년 전 조회 9,259
12년 전 조회 2,215
12년 전 조회 4,431
12년 전 조회 7,089
12년 전 조회 2,244
12년 전 조회 3,530
12년 전 조회 1,246
12년 전 조회 1,955
12년 전 조회 1,837
12년 전 조회 2,014
12년 전 조회 3,995
12년 전 조회 1,771
12년 전 조회 2,506
12년 전 조회 1,957
12년 전 조회 1,589
12년 전 조회 2,020