특정 일자의 요일이나 주차 또는 분기 등을 추출하여 사용해야할 때가 있다. 이럴 때 DATEPART 라는 함수를 이용하면 일자의 요일 등을 확인할 수가 있다.
DATEPART
- 날짜를 인수로 받아 해당 날짜의 요일, 주차, 분기 등을 계산해주는 함수
/* DATEPART(옵션, 날짜) 형식으로 기재 */
SELECT DATEPART(WEEKDAY, '2025-03-02')
명칭 | 인수 | 인수 약어 |
요일 | WEEKDAY | DW |
분기 | QUARTER | QQ, Q |
일년 중 몇일 | DAYOFYEAR | DY, Y |
일년 중 몇주차 | WEEK | WK, WW |
우선, WEEKDAY 로 조회를 하면 요일을 확인하기 위한 옵션이다. 2025-03-02 는 [ 1 ] 로 결과값이 추출되는데, 요일을 숫자로 표기하여 조회하기 때문이다. 일요일을 1부터 시작하여 1, 2, 3 의 형태로 표기되기 때문에 [1] 은 일요일이다.
요일 표기는 아래의 표와 같다.
결과값 | 요일 |
1 | 일요일 |
2 | 월요일 |
3 | 화요일 |
4 | 수요일 |
5 | 목요일 |
6 | 금요일 |
7 | 토요일 |
SELECT DATEPART(QUARTER, '2025-03-02')
SELECT DATEPART(DAYOFYEAR, '2025-03-02')
SELECT DATEPART(WEEK, '2025-03-02')
2025-03-02 를 조회 시, QUARTER = 1 , DAYOFYEAR = 61 , WEEK = 10 으로 1분기, 61일째, 10주차로 확인이 가능하다.
DATENAME
- 날짜를 인수로 받아 해당 날짜의 요일을 숫자가 아닌 요일명으로 표기
SELECT DATENAME(WEEKDAY, '2025-03-02')
'데이터베이스[DB] > MSSQL' 카테고리의 다른 글
[MS-SQL] DELETE, DROP, TRUNCATE (0) | 2025.04.06 |
---|---|
[MS-SQL] LEFT,RIGHT,SUBSTRING, LEN - 문자열함수 (0) | 2025.03.25 |
[MS-SQL] UNION, UNION ALL (0) | 2025.03.18 |
[MS-SQL] COMMIT, ROLLBACK, BEGIN TRAN (0) | 2025.02.11 |
[MS-SQL] 테이블별 용량확인 (0) | 2025.01.18 |
[MS-SQL] TOP, WITH TIES, ROW_NUMBER (0) | 2025.01.17 |
[MS-SQL] IIF, CASE ( DECODE, CASE ) 조건문 (0) | 2025.01.15 |
[MS-SQL] 테이블생성, 컬럼생성, 컬럼수정, 컬럼삭제, 테이블명변경 ( Create table, Alter table, Modify, Rename ) (0) | 2025.01.14 |