각 다른 ROW에 있는 컬럼값 0 5 453

by 구지또 [2021.11.03 13:30:56]


EX A B
감자 20210511 11:40:00 50
고구마 20210511 11:30:00 100

 

감자 고구마 A시간이 얼마나 걸린건지 값을 도출하고싶어요

원하는값 10분

유니온을 안쓰고 구하고싶어요..

by isNull [2021.11.03 14:05:36]

WITH T(EX, A, B) AS (
SELECT '감자'  , TO_DATE('20210511 114000', 'YYYYMMDD HH24MISS'), 50 FROM DUAL UNION ALL
SELECT '고구마', TO_DATE('20210511 113000', 'YYYYMMDD HH24MISS'), 100 FROM DUAL
)
SELECT ABS( MAX( CASE WHEN EX = '감자'   THEN A ELSE NULL END )
          - MAX( CASE WHEN EX = '고구마' THEN A ELSE NULL END ) ) * 24 * 60 AS DIFF_A_MIN
  FROM T
 WHERE 1 = 1


by 구지또 [2021.11.03 14:14:52]

감사합니다!


by pajama [2021.11.03 14:06:45]

아래처럼 구하긴 했는데.. 이런방식을 원하시는게 맞는지요?

with t (ex, a, b) as (
select '감자'  , '20210511 11:40:00',  50 from dual union all
select '고구마', '20210511 11:30:00', 100 from dual
)
select to_timestamp(max(case when ex='감자' then a end)  , 'YYYYMMDD HH:MI:SS') - 
       to_timestamp(max(case when ex='고구마' then a end), 'YYYYMMDD HH:MI:SS')
from t

 


by 구지또 [2021.11.03 14:14:48]

감사합니다!!


by 마농 [2021.11.03 15:01:04]
SELECT (MAX(a) - MIN(a)) * 24 * 60 minute
  FROM t
;

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입