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,912
12년 전 조회 4,503
12년 전 조회 3,827
12년 전 조회 2,264
12년 전 조회 8,516
12년 전 조회 3,344
12년 전 조회 3,563
12년 전 조회 2,628
12년 전 조회 4,298
12년 전 조회 2,186
12년 전 조회 1,954
12년 전 조회 2,602
12년 전 조회 2,164
12년 전 조회 2,841
12년 전 조회 2,156
12년 전 조회 2,593
12년 전 조회 2,705
12년 전 조회 2,064
12년 전 조회 2,324
12년 전 조회 5,976
12년 전 조회 2,397
12년 전 조회 1,712
12년 전 조회 2,085
12년 전 조회 3,217
12년 전 조회 1,854
12년 전 조회 2,112
12년 전 조회 2,535
12년 전 조회 1,905
12년 전 조회 1,234
12년 전 조회 2,431
12년 전 조회 2,028
12년 전 조회 8,455
12년 전 조회 2,914
12년 전 조회 2,703
12년 전 조회 2,764
12년 전 조회 3,378
12년 전 조회 1,377
12년 전 조회 4,492
12년 전 조회 2,129
12년 전 조회 7,261
12년 전 조회 1,775
12년 전 조회 1,776
12년 전 조회 1,848
12년 전 조회 1,462
12년 전 조회 3,727
12년 전 조회 2,211
12년 전 조회 2,253
12년 전 조회 1,756
12년 전 조회 3,527
12년 전 조회 2,443
12년 전 조회 1,210
12년 전 조회 4,395
12년 전 조회 1,786
12년 전 조회 1,538
12년 전 조회 1,969
12년 전 조회 6,285
12년 전 조회 1,911
12년 전 조회 3,558
12년 전 조회 3,011
12년 전 조회 1,245
12년 전 조회 3,709
12년 전 조회 2,141
12년 전 조회 2,035
12년 전 조회 2,142
12년 전 조회 4,056
12년 전 조회 2,872
12년 전 조회 4,485
12년 전 조회 9,386
12년 전 조회 4,928
12년 전 조회 4,554
12년 전 조회 2,141
12년 전 조회 2,184
12년 전 조회 3,941
12년 전 조회 4,774
12년 전 조회 5,160
12년 전 조회 2,402
12년 전 조회 2,077
12년 전 조회 1,654
12년 전 조회 1,715
12년 전 조회 3,527
12년 전 조회 3,504
12년 전 조회 2,042
12년 전 조회 3,562
12년 전 조회 2,059
12년 전 조회 9,311
12년 전 조회 2,299
12년 전 조회 4,528
12년 전 조회 7,181
12년 전 조회 2,339
12년 전 조회 3,598
12년 전 조회 1,336
12년 전 조회 2,034
12년 전 조회 1,919
12년 전 조회 2,090
12년 전 조회 4,075
12년 전 조회 1,847
12년 전 조회 2,590
12년 전 조회 2,039
12년 전 조회 1,673
12년 전 조회 2,106