@@DATEFIRST (Transact-SQL)

適用於:Microsoft Fabric 中 Microsoft Fabric倉儲中的 SQL ServerAzure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse AnalyticsAnalytics Platform System (PDW)SQL 分析端點

此函式會傳回特定工作階段之 SET DATEFIRST 的目前值。

如需所有 Transact-SQL 日期和時間資料類型與函式的概觀,請參閱日期和時間資料類型與函式 (Transact-SQL)

Transact-SQL 語法慣例

Syntax

@@DATEFIRST  

注意

若要檢視 SQL Server 2014 (12.x) 和舊版的 Transact-SQL 語法,請參閱 舊版檔

傳回類型

tinyint

備註

SET DATEFIRST n 會指定當週第一天 (星期日、星期一、星期二等)。 n 值的範圍從 1 到 7。

SET DATEFIRST 3;
GO  
SELECT @@DATEFIRST; -- 3 (Wednesday)
GO

針對美國英文環境,@@DATEFIRST 預設為 7 (星期日)。

這項語言設定會影響字元字串解譯,因為 SQL Server 會將這些字串轉換成日期值以便資料庫儲存。 這項設定也會影響儲存在資料庫中之日期值的顯示。 這項設定不會影響日期資料的儲存格式。

此範例會先將語言設定為 Italian。 陳述式 SELECT @@DATEFIRST; 會傳回 1。 下一個陳述式會接著將語言設定為 us_english。 最後一個陳述式 SELECT @@DATEFIRST; 會傳回 7

SET LANGUAGE Italian;  
GO  
SELECT @@DATEFIRST;  
GO  
SET LANGUAGE us_english;  
GO  
SELECT @@DATEFIRST;  

範例

此範例是將當週第一天設為 5 (星期五),並且假設當日 (Today) 是星期六。 SELECT 陳述式會傳回 DATEFIRST 值以及當週當日的號碼。

SET DATEFIRST 5;  
SELECT @@DATEFIRST AS 'First Day'  
    ,DATEPART(dw, SYSDATETIME()) AS 'Today';  

以下為結果集。

First Day         Today  
----------------  --------------  
5                 2  

範例

Azure Synapse Analytics 和 Analytics Platform System (PDW)

SELECT @@DATEFIRST;  

另請參閱

組態函數 (Transact-SQL)