반응형
Ant_U
DBA 개미
Ant_U
전체 방문자
오늘
어제
  • 분류 전체보기 (262)
    • AWS (3)
    • C# (1)
    • SQL (236)
      • MYSQL (186)
      • MSSQL (50)
    • 자격증 (20)
      • SQLD (12)
      • SQLP (8)

인기 글

최근 글

250x250
hELLO · Designed By 정상우.
Ant_U

DBA 개미

SQL/MSSQL

[MSSQL] @@DATEFIRST 사용 방법 및 예시

2023. 7. 26. 17:28
728x90
반응형

@@DATEFIRST는 SQL Server에서 날짜 함수를 사용할 때, 주간의 첫 날을 정의하는 시스템 변수입니다. 

이 변수는 매주 시작하는 요일을 설정하는데 사용됩니다. 

기본적으로 @@DATEFIRST는 7로 설정되어 있으며, 이는 일요일이 주간의 첫 날로 설정된 것을 의미합니다.

주간의 첫 날을 변경하고자 할 때는 다음과 같이 설정할 수 있습니다. 

예를 들어, 월요일을 주간의 첫 날로 설정하고 싶다면 아래와 같이 실행합니다:

SET DATEFIRST 1;

위의 코드를 실행하면 주간의 첫 날이 월요일로 변경됩니다.

이제 WEEKDATE()나 DATEPART()와 같은 날짜 함수를 사용할 때, 해당 설정에 따라 주간의 첫 날이 월요일로 계산됩니다.

다음은 다른 예시입니다:

1. 주간의 첫 날을 일요일로 설정하기:

SET DATEFIRST 7;


2. 주간의 첫 날을 화요일로 설정하기:

SET DATEFIRST 2;


3. 주간의 첫 날을 수요일로 설정하기:

SET DATEFIRST 3;


주의할 점은 @@DATEFIRST 설정은 세션별로 유지되며, 쿼리가 실행되는 동안만 영향을 미친다는 것입니다.

즉, 설정한 후에 새로운 세션이 시작되면 기본값 7로 돌아가게 됩니다.

@@DATEFIRST를 사용하여 날짜 함수를 더욱 유연하고 원하는 요일을 기준으로 작업할 수 있습니다. 

하지만 다른 코드나 스토어드 프로시저와 상호작용할 때는 주의해서 사용해야 하며, 설정 후에 적절한 시점에서 원래의 기본값으로 복원하도록 주의해야 합니다.

728x90
반응형

'SQL > MSSQL' 카테고리의 다른 글

[MSSQL] @@LOCK_TIMEOUT 사용 방법 및 예시  (0) 2023.07.26
[MSSQL] @@LANGUAGE 사용 방법 및 예시  (0) 2023.07.26
[MSSQL] @@LANGID 사용 방법 및 예시  (0) 2023.07.26
[MSSQL] @@DBTS 사용 방법 및 예시  (0) 2023.07.26
[MSSQL] 열을 행으로 바꾸는 방법 / UNPIVOT, CROSS APLLY  (0) 2023.07.21
[MSSQL] 행 합치는 법(STRING_AGG, FOR XML PATH, STUFF)  (0) 2023.07.13
[MSSQL] FOR XML 사용 방법  (0) 2023.07.13
[MSSQL] @@ROWCOUNT 사용 방법 및 예시  (0) 2023.07.06
    'SQL/MSSQL' 카테고리의 다른 글
    • [MSSQL] @@LANGID 사용 방법 및 예시
    • [MSSQL] @@DBTS 사용 방법 및 예시
    • [MSSQL] 열을 행으로 바꾸는 방법 / UNPIVOT, CROSS APLLY
    • [MSSQL] 행 합치는 법(STRING_AGG, FOR XML PATH, STUFF)
    Ant_U
    Ant_U

    티스토리툴바