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로 묶어주면 되는군요
댓글을 작성하시려면 로그인이 필요합니다. 로그인

프로그램

+
제목 글쓴이 날짜 조회
12년 전 조회 2,069
12년 전 조회 3,773
12년 전 조회 3,083
12년 전 조회 1,540
12년 전 조회 7,766
12년 전 조회 2,529
12년 전 조회 2,786
12년 전 조회 1,858
12년 전 조회 3,538
12년 전 조회 1,436
12년 전 조회 1,182
12년 전 조회 1,828
12년 전 조회 1,405
12년 전 조회 2,057
12년 전 조회 1,372
12년 전 조회 1,808
12년 전 조회 1,890
12년 전 조회 1,324
12년 전 조회 1,548
12년 전 조회 5,246
12년 전 조회 1,624
12년 전 조회 948
12년 전 조회 1,322
12년 전 조회 2,438
12년 전 조회 1,093
12년 전 조회 1,412
12년 전 조회 1,787
12년 전 조회 1,222
12년 전 조회 490
12년 전 조회 1,692
12년 전 조회 1,319
12년 전 조회 7,601
12년 전 조회 2,188
12년 전 조회 1,958
12년 전 조회 2,023
12년 전 조회 2,466
12년 전 조회 562
12년 전 조회 3,692
12년 전 조회 1,359
12년 전 조회 6,399
12년 전 조회 1,003
12년 전 조회 964
12년 전 조회 1,275
12년 전 조회 651
12년 전 조회 3,110
12년 전 조회 1,401
12년 전 조회 1,474
12년 전 조회 980
12년 전 조회 2,604
12년 전 조회 1,641
12년 전 조회 431
12년 전 조회 3,497
12년 전 조회 1,000
12년 전 조회 819
12년 전 조회 1,189
12년 전 조회 5,552
12년 전 조회 1,186
12년 전 조회 2,792
12년 전 조회 2,243
12년 전 조회 464
12년 전 조회 2,928
12년 전 조회 1,374
12년 전 조회 1,286
12년 전 조회 1,340
12년 전 조회 3,256
12년 전 조회 2,027
12년 전 조회 3,687
12년 전 조회 8,571
12년 전 조회 4,169
12년 전 조회 3,733
12년 전 조회 1,349
12년 전 조회 1,418
12년 전 조회 3,140
12년 전 조회 3,977
12년 전 조회 4,383
12년 전 조회 1,597
12년 전 조회 1,287
12년 전 조회 871
12년 전 조회 972
12년 전 조회 2,710
12년 전 조회 2,724
12년 전 조회 1,246
12년 전 조회 2,791
12년 전 조회 1,269
12년 전 조회 8,452
12년 전 조회 1,506
12년 전 조회 3,764
12년 전 조회 6,375
12년 전 조회 1,558
12년 전 조회 2,826
12년 전 조회 577
12년 전 조회 1,284
12년 전 조회 1,147
12년 전 조회 1,304
12년 전 조회 3,298
12년 전 조회 1,074
12년 전 조회 1,808
12년 전 조회 1,246
12년 전 조회 898
12년 전 조회 1,394
🐛 버그신고