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,859
12년 전 조회 4,447
12년 전 조회 3,781
12년 전 조회 2,217
12년 전 조회 8,472
12년 전 조회 3,292
12년 전 조회 3,514
12년 전 조회 2,590
12년 전 조회 4,252
12년 전 조회 2,157
12년 전 조회 1,909
12년 전 조회 2,553
12년 전 조회 2,119
12년 전 조회 2,792
12년 전 조회 2,109
12년 전 조회 2,550
12년 전 조회 2,662
12년 전 조회 2,017
12년 전 조회 2,274
12년 전 조회 5,929
12년 전 조회 2,359
12년 전 조회 1,677
12년 전 조회 2,038
12년 전 조회 3,178
12년 전 조회 1,815
12년 전 조회 2,070
12년 전 조회 2,489
12년 전 조회 1,869
12년 전 조회 1,199
12년 전 조회 2,381
12년 전 조회 1,977
12년 전 조회 8,421
12년 전 조회 2,879
12년 전 조회 2,668
12년 전 조회 2,720
12년 전 조회 3,321
12년 전 조회 1,327
12년 전 조회 4,444
12년 전 조회 2,078
12년 전 조회 7,199
12년 전 조회 1,719
12년 전 조회 1,724
12년 전 조회 1,803
12년 전 조회 1,412
12년 전 조회 3,690
12년 전 조회 2,165
12년 전 조회 2,198
12년 전 조회 1,694
12년 전 조회 3,467
12년 전 조회 2,388
12년 전 조회 1,155
12년 전 조회 4,344
12년 전 조회 1,735
12년 전 조회 1,489
12년 전 조회 1,925
12년 전 조회 6,236
12년 전 조회 1,862
12년 전 조회 3,514
12년 전 조회 2,957
12년 전 조회 1,206
12년 전 조회 3,665
12년 전 조회 2,090
12년 전 조회 1,987
12년 전 조회 2,101
12년 전 조회 4,018
12년 전 조회 2,815
12년 전 조회 4,433
12년 전 조회 9,335
12년 전 조회 4,878
12년 전 조회 4,506
12년 전 조회 2,093
12년 전 조회 2,140
12년 전 조회 3,891
12년 전 조회 4,722
12년 전 조회 5,119
12년 전 조회 2,364
12년 전 조회 2,031
12년 전 조회 1,603
12년 전 조회 1,678
12년 전 조회 3,477
12년 전 조회 3,459
12년 전 조회 1,987
12년 전 조회 3,521
12년 전 조회 2,003
12년 전 조회 9,298
12년 전 조회 2,257
12년 전 조회 4,472
12년 전 조회 7,134
12년 전 조회 2,289
12년 전 조회 3,561
12년 전 조회 1,293
12년 전 조회 1,991
12년 전 조회 1,870
12년 전 조회 2,049
12년 전 조회 4,028
12년 전 조회 1,805
12년 전 조회 2,550
12년 전 조회 1,994
12년 전 조회 1,632
12년 전 조회 2,050