반응형
DB에 20230501225336과 같이 날짜 데이터를 넣고 있는데, 데이터 추출이 필요해서
convert함수를 사용해서 추출하려고 했으나,
SELECT CONVERT(DATETIME, '20230501225336', 121) AS ConvertedDateTime;
문자열을 날짜 및/또는 시간으로 변환하지 못했습니다.와 같은 오류 발생
stuff를 사용하려고도 했으나 실패, try_convert 또한 실패..
뭐가 문제인것인가..!
해결
텍스트로 들어온 데이터가 뭔가 구조가 안 맞는듯 싶다.
따로 substring을 해서 원하는 데이터로 뽑아내서 concat후 convert 처리
SELECT CONVERT(DATETIME, CONCAT(SUBSTRING('20230501225336', 1, 4),
'-', SUBSTRING('20230501225336', 5, 2), '-', SUBSTRING('20230501225336', 7, 2),
' ', SUBSTRING('20230501225336', 9, 2), ':', SUBSTRING('20230501225336', 11, 2),
':', SUBSTRING('20230501225336', 13, 2)), 121) AS ConvertedDateTime;
반응형
'공부 > SQL' 카테고리의 다른 글
| [MSSQL] 너무 많은 인수가 지정 오류 (0) | 2023.11.10 |
|---|---|
| 가장 최근 날짜 쿼리 조회 (0) | 2022.10.26 |
| mysql 서브쿼리 limit 0, 200 에러 (2) | 2022.09.06 |
| mybatis 날짜 사이 조회 쿼리 문 (0) | 2022.07.01 |
| Error 1064(42000) : you have an error in your SQL Syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at Line 4 (0) | 2022.06.28 |