다들 고생이 많으십니다.
궁금한게 있어 글 남겨 봅니다.
A라는 컬럼이 있고요. 데이터타입은 VARCHAR(20)입니다.
이 컬럼에 데이터는 '20190827120000' , '20190827120100' , '20190827120200' 이렇게 총 3개가 있고요.
이 때, 제가 원하는 건 이겁니다.
A컬럼 중 MAX값을 가져와 현재 시간과의 시간차이를 구하려고 하는데
datediff(MINUTE, 여기에 MAX값 , 현재시각) as '시간차'
저 부분을 어떻게 처리하면 좋을 지 조언 부탁드립니다.
깔끔해보이진 않지만 이런식으로 하면 원하는 값은 나올거 같습니다.
CREATE TABLE TBL_X
(
A VARCHAR(20)
)
INSERT INTO TBL_X VALUES ('20190827120000');
INSERT INTO TBL_X VALUES ('20190827120100');
INSERT INTO TBL_X VALUES ('20190827120200');
SELECT DATEDIFF(MINUTE, A , GETDATE()) AS '시간차'
FROM
(
SELECT SUBSTRING(MAX(A), 1, 4) + '-' + SUBSTRING(MAX(A), 5, 2) + '-' + SUBSTRING (MAX(A), 7, 2) + ' ' + SUBSTRING(MAX(A), 9, 2) + ':' + SUBSTRING(MAX(A), 11, 2) + ':' + SUBSTRING (MAX(A), 13, 2) AS A
FROM TBL_X
) AS T1