2012 이전 버전의 MS-SQL Server에서는 날짜 형식을 검색할 때 CONVERT 함수를 써야 하고, 세번째 인자로 20을 주로 사용한다.
SELECT * FROM TA_CUST_PURCHASE WHERE CONVERT(NVARCHAR, SALE_DATE, 20) LIKE '2023-04%'
-- 두 쿼리의 결과는 같다
SELECT * FROM TA_CUST_PURCHASE WHERE CONVERT(NVARCHAR(7), SALE_DATE, 20)='2023-04'
SQL Server 2012 버전부터는 추가된 FORMAT 함수를 사용하면 된다.
SELECT FORMAT(GETDATE(), 'yyyy-MM-dd') -- 2023-05-19
SELECT FORMAT(GETDATE(), 'yyyy-MM-dd HH:mm:ss') -- 2023-05-19
datetime 형식의 데이터를 CONVERT 할 때 쓰이는 포맷
포맷 | 쿼리 예시 | 쿼리 결과 |
0 | SELECT CONVERT(NVARCHAR, GETDATE(), 0) | Aug 23 2019 1:39PM |
1 | SELECT CONVERT(NVARCHAR, GETDATE(), 1) | 08/23/19 |
2 | SELECT CONVERT(NVARCHAR, GETDATE(), 2) | 19.08.23 |
3 | SELECT CONVERT(NVARCHAR, GETDATE(), 3) | 23/08/19 |
4 | SELECT CONVERT(NVARCHAR, GETDATE(), 4) | 23.08.19 |
5 | SELECT CONVERT(NVARCHAR, GETDATE(), 5) | 23-08-19 |
6 | SELECT CONVERT(NVARCHAR, GETDATE(), 6) | 23 Aug 19 |
7 | SELECT CONVERT(NVARCHAR, GETDATE(), 7) | Aug 23, 19 |
8 or 24 or 108 | SELECT CONVERT(NVARCHAR, GETDATE(), 8) | 13:39:17 |
9 or 109 | SELECT CONVERT(NVARCHAR, GETDATE(), 9) | Aug 23 2019 1:39:17:090PM |
10 | SELECT CONVERT(NVARCHAR, GETDATE(), 10) | 08-23-19 |
11 | SELECT CONVERT(NVARCHAR, GETDATE(), 11) | 19/08/23 |
12 | SELECT CONVERT(NVARCHAR, GETDATE(), 12) | 190823 |
13 or 113 | SELECT CONVERT(NVARCHAR, GETDATE(), 13) | 23 Aug 2019 13:39:17:090 |
14 or 114 | SELECT CONVERT(NVARCHAR, GETDATE(), 14) | 13:39:17:090 |
20 or 120 | SELECT CONVERT(NVARCHAR, GETDATE(), 20) | 2019-08-23 13:39:17 |
21 or 25 or 121 | SELECT CONVERT(NVARCHAR, GETDATE(), 21) | 2019-08-23 13:39:17.090 |
22 | SELECT CONVERT(NVARCHAR, GETDATE(), 22) | 08/23/19 1:39:17 PM |
23 | SELECT CONVERT(NVARCHAR, GETDATE(), 23) | 2019-08-23 |
101 | SELECT CONVERT(NVARCHAR, GETDATE(), 101) | 08/23/2019 |
102 | SELECT CONVERT(NVARCHAR, GETDATE(), 102) | 2019.08.23 |
103 | SELECT CONVERT(NVARCHAR, GETDATE(), 103) | 23/08/2019 |
104 | SELECT CONVERT(NVARCHAR, GETDATE(), 104) | 23.08.2019 |
105 | SELECT CONVERT(NVARCHAR, GETDATE(), 105) | 23-08-2019 |
106 | SELECT CONVERT(NVARCHAR, GETDATE(), 106) | 23 Aug 2019 |
107 | SELECT CONVERT(NVARCHAR, GETDATE(), 107) | Aug 23, 2019 |
110 | SELECT CONVERT(NVARCHAR, GETDATE(), 110) | 08-23-2019 |
111 | SELECT CONVERT(NVARCHAR, GETDATE(), 111) | 2019/08/23 |
112 | SELECT CONVERT(NVARCHAR, GETDATE(), 112) | 20190823 |
113 | SELECT CONVERT(NVARCHAR, GETDATE(), 113) | 23 Aug 2019 13:39:17.090 |
120 | SELECT CONVERT(NVARCHAR, GETDATE(), 120) | 2019-08-23 13:39:17 |
121 | SELECT CONVERT(NVARCHAR, GETDATE(), 121) | 2019-08-23 13:39:17.090 |
126 | SELECT CONVERT(NVARCHAR, GETDATE(), 126) | 2019-08-23T13:39:17.090 |
127 | SELECT CONVERT(NVARCHAR, GETDATE(), 127) | 2019-08-23T13:39:17.090 |
130 | SELECT CONVERT(NVARCHAR, GETDATE(), 130) | 22 ذو الحجة 1440 1:39:17.090P |
131 | SELECT CONVERT(NVARCHAR, GETDATE(), 131) | 22/12/1440 1:39:17.090PM |
'코딩 > SQL_Query' 카테고리의 다른 글
MySQL 숫자만 영문만 한글만 추출 (0) | 2023.06.30 |
---|---|
[MySQL] MAX(), MIN() 함수 사용 시 조건 추가 (0) | 2023.06.29 |
mysql - max / min group by 주의할 점 (0) | 2023.04.10 |
MySQL - SELECT 결과로 UPDATE, JOIN 하여 UPDATE (0) | 2023.02.16 |
MySQL, PHP 주기별 (주간 / 일간 / 월간) 합계, 매출 데이터 구하기 (0) | 2023.01.25 |