SET DATEFIRST(Transact-SQL)
일주일의 시작 요일을 1부터 7까지의 숫자로 설정합니다.
모든 Transact-SQL 날짜/시간 데이터 형식 및 함수에 대한 개요는 날짜 및 시간 데이터 형식 및 함수(Transact-SQL)를 참조하십시오.
적용 대상: SQL Server(SQL Server 2008 - current version), Windows Azure SQL 데이터베이스(최초 릴리스 - 현재 릴리스) |
구문
SET DATEFIRST { number | @number_var }
인수
number | **@**number_var
일주일의 시작 요일을 나타내는 정수입니다. 다음 값 중 하나를 사용할 수 있습니다.값
일주일의 시작 요일
1
월요일
2
화요일
3
수요일
4
목요일
5
금요일
6
토요일
7(기본값, 미국 영어)
일요일
주의
SET DATEFIRST의 현재 설정을 확인하려면 @@DATEFIRST 함수를 사용합니다.
SET DATEFIRST 옵션은 실행 시간 또는 런타임에 설정되며, 구문 분석 시에는 설정되지 않습니다.
SET DATEFIRST를 지정해도 DATEDIFF에는 영향을 주지 않습니다. DATEDIFF는 항상 일요일을 한 주의 첫 날로 사용하여 결정적 함수가 되도록 합니다.
사용 권한
public 역할의 멤버 자격이 필요합니다.
예
다음 예에서는 날짜 값에 대해 요일을 표시하고 DATEFIRST 설정 변경 시의 결과를 보여 줍니다.
-- SET DATEFIRST to U.S. English default value of 7.
SET DATEFIRST 7;
SELECT CAST('1999-1-1' AS datetime2) AS SelectDate
,DATEPART(dw, '1999-1-1') AS DayOfWeek;
-- January 1, 1999 is a Friday. Because the U.S. English default
-- specifies Sunday as the first day of the week, DATEPART of 1999-1-1
-- (Friday) yields a value of 6, because Friday is the sixth day of the
-- week when you start with Sunday as day 1.
SET DATEFIRST 3;
-- Because Wednesday is now considered the first day of the week,
-- DATEPART now shows that 1999-1-1 (a Friday) is the third day of the
-- week. The following DATEPART function should return a value of 3.
SELECT CAST('1999-1-1' AS datetime2) AS SelectDate
,DATEPART(dw, '1999-1-1') AS DayOfWeek;
GO