데이터를 살펴보다 보면 데이터 형식을 원하는 모습으로 맞춰야 될 때가 자주 있다.
특히 날짜..! 데이터 형식 변경 작업에 있어 그 어떤 형식보다도 더 자주 작업을 해 줘야 하는데,
특정 날짜 컬럼에서 yyyy-mm-dd 뿐만 아니라 hh-mm-ss 내용까지 함께 반영 될 때가 있기 때문이다.
yyyy-mm-dd hh-mm-ss 형식은 초단위까지 표현하는 좀 더 정확한(?) 기입이 필요할 때 쓰이는 시간 표현 방식이다.
하지만 적어도 나의 실무 환경에선 시/분/초 단위까지 확인해야 될 일은 거의(전혀) 없고 연/월/일 까지만 파악하면 되므로, 해당 데이터 형식을 yyyy-mm-dd 로 바꿔 줘야 한다.
이 때 위와 같은 형식으로 입력된 데이터를 DATE_FORMAT 함수로 그 형식을 바꾸려 하다 보면 초 단위(1724371200000), 또는 밀리초 단위(20240841600000)로 형식이 원하는 방식과 더욱 멀어질 수 있다.
(초단위, 또는 밀리초 단위까지 나오는 데이터 형식에 대해선 추후 포스팅 해야지!)
이럴 땐 당황하지 말고 DATE_FORMAT 함수가 아닌 CAST함수를 적용하면 된다.
DATE_FORMAT 함수는 데이터를 변환하는 것이 아닌 기존 날짜 또는 시간으로 지정된 날짜 형식의 문자열을 바꾼다면,
CAST 함수는 DATETIME 형식을 DATE로, 또는 INT 형식을 STRING으로, 그 데이터 형식 자체를 변경하는 함수이다.
따라서 특정 날짜 데이터가 DATE_FORMAT 함수를 통해 원하는 형식으로 바뀌지 않는다면, 데이터 형식 자체를 변경해 보아야 할 수도 있다.
그런 경우, CAST함수로 우선 그 데이터 형식을 DATE 등 상황에 맞는 형식으로 먼저 바꿔 보면 쉽게 원하는 형식을 갖추게 될 수도 있을 것이다.
형식 변환의 한 가지 방법이니 데이터 전처리시 참고해 보면 좋을 것 같다.
'일' 카테고리의 다른 글
내가 부동산 중개업을 하고자 하는 이유 세가지 (5) | 2024.10.01 |
---|---|
복잡한 쿼리 간단 정리 함수, WITH 함수(CTE) (0) | 2024.08.18 |
구글 스프레드시트 데이터 요약 도구 | 피봇 테이블 (0) | 2024.07.24 |
구글 스프레드시트에서 쉽게 데이터 마트 만드는 함수 2가지 (0) | 2024.07.24 |
Arrayformula와 같은 역할을 하는 Map 함수, 용도의 차이는? (0) | 2024.07.23 |