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,079
12년 전 조회 3,782
12년 전 조회 3,101
12년 전 조회 1,550
12년 전 조회 7,787
12년 전 조회 2,546
12년 전 조회 2,802
12년 전 조회 1,875
12년 전 조회 3,556
12년 전 조회 1,455
12년 전 조회 1,197
12년 전 조회 1,846
12년 전 조회 1,423
12년 전 조회 2,073
12년 전 조회 1,390
12년 전 조회 1,827
12년 전 조회 1,906
12년 전 조회 1,336
12년 전 조회 1,564
12년 전 조회 5,261
12년 전 조회 1,638
12년 전 조회 965
12년 전 조회 1,338
12년 전 조회 2,453
12년 전 조회 1,109
12년 전 조회 1,429
12년 전 조회 1,803
12년 전 조회 1,229
12년 전 조회 507
12년 전 조회 1,702
12년 전 조회 1,332
12년 전 조회 7,620
12년 전 조회 2,206
12년 전 조회 1,976
12년 전 조회 2,036
12년 전 조회 2,484
12년 전 조회 578
12년 전 조회 3,708
12년 전 조회 1,372
12년 전 조회 6,414
12년 전 조회 1,011
12년 전 조회 979
12년 전 조회 1,275
12년 전 조회 668
12년 전 조회 3,113
12년 전 조회 1,421
12년 전 조회 1,490
12년 전 조회 988
12년 전 조회 2,620
12년 전 조회 1,657
12년 전 조회 446
12년 전 조회 3,510
12년 전 조회 1,014
12년 전 조회 827
12년 전 조회 1,206
12년 전 조회 5,561
12년 전 조회 1,193
12년 전 조회 2,810
12년 전 조회 2,260
12년 전 조회 483
12년 전 조회 2,946
12년 전 조회 1,387
12년 전 조회 1,294
12년 전 조회 1,355
12년 전 조회 3,274
12년 전 조회 2,043
12년 전 조회 3,703
12년 전 조회 8,588
12년 전 조회 4,184
12년 전 조회 3,750
12년 전 조회 1,365
12년 전 조회 1,438
12년 전 조회 3,153
12년 전 조회 3,992
12년 전 조회 4,397
12년 전 조회 1,611
12년 전 조회 1,301
12년 전 조회 886
12년 전 조회 988
12년 전 조회 2,725
12년 전 조회 2,738
12년 전 조회 1,260
12년 전 조회 2,806
12년 전 조회 1,283
12년 전 조회 8,467
12년 전 조회 1,520
12년 전 조회 3,776
12년 전 조회 6,388
12년 전 조회 1,571
12년 전 조회 2,840
12년 전 조회 592
12년 전 조회 1,301
12년 전 조회 1,162
12년 전 조회 1,319
12년 전 조회 3,315
12년 전 조회 1,089
12년 전 조회 1,823
12년 전 조회 1,263
12년 전 조회 914
12년 전 조회 1,402
🐛 버그신고