SQL Serverでは、週の最初の曜日は現在の言語設定によって決定されます。 SET DATEFIRSTで上書きすることもできます ステートメント。これにより、週の最初の曜日を明示的に設定できます。
どちらの場合も、@@DATEFIRSTを使用できます セッションが週の最初の日に使用している設定を確認する関数。この記事はその方法を示しています。
構文
構文は単純です。次のようになります:
@@DATEFIRST
例
使用例を次に示します。
SELECT @@DATEFIRST AS 'Result';
結果:
+----------+ | Result | |----------| | 7 | +----------+
これは、週の最初の日が日曜日であることを示しています。次の表があるので、これを知っています。
週の最初の日のマッピング
次の表は、各値が曜日にどのようにマッピングされるかを示しています。
| 値 | 週の最初の日は |
|---|---|
| 1 | 月曜日 |
| 2 | 火曜日 |
| 3 | 水曜日 |
| 4 | 木曜日 |
| 5 | 金曜日 |
| 6 | 土曜日 |
| 7 | 日曜日 |
したがって、@@DATEFIRSTの戻り値
この値は、最初は現在の言語設定によって決定されますが、前述のように、SET DATEFIRSTを使用することもできます。 言語設定を上書きします。
@@DATEFIRSTを確認するには 設定は各言語にマッピングされます。SQLServer2017のすべての言語と関連する日付形式のリストは次のとおりです。
sp_helplanguageを使用することもできます そのリストを返すストアドプロシージャ。これを行うには、SQL Server(T-SQL)で特定の言語に使用される日付形式を見つける方法を参照してください。