SQL 資料庫函式是什麼?

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

深入了解您可以與 SQL 資料庫搭配使用之內建函式的類別。 您可以使用內建函式,或建立您自己的使用者定義函式。

彙總函式

彙總函式會根據一組值來執行計算,再傳回單一值。 這些函數可在選取清單中或在 SELECT 陳述式的 HAVING 子句中使用。 您可以與 GROUP BY 子句搭配使用彙總來計算資料列類別的彙總。 使用 OVER 子句來計算特定範圍值的彙總。 OVER 子句無法接續在 GROUPING 或 GROUPING_ID 彙總之後。

所有彙總函式都具有確定性,即在相同的輸入值上執行時,它們一律會傳回相同的值。 如需詳細資訊,請參閱 決定性與非決定性函數

分析函數

分析函數會根據資料列群組計算出彙總值。 但不同於彙總函式,分析函式可以傳回每個群組的多個資料列。 您可以使用分析函式計算群組中的移動平均、最新總數、百分比或前 N 個結果。

位元操作函數

適用於:SQL Server 2022 (16.x)

比起個別位元,位元操作函數可讓您更有效率地處理及儲存資料。 如需詳細資訊,請參閱位元操作函數

排名函數

排名函數會傳回資料分割中每個資料列的次序值。 根據所用的函數而定,有些資料列可能會收到與其他資料列相同的值。 排名函數不具決定性。

資料列集函式

資料列集函式會傳回可在 SQL 陳述式中,依照資料表參考的方式來使用的物件。

純量函式

處理單一值,再傳回單一值。 凡是運算式有效之處,都能夠使用純量函數。

純量函式類別

函數類別目錄 描述
組態函式 傳回目前組態的詳細資訊。
轉換函式 支援資料類型轉型及轉換。
資料指標函式 傳回資料指標的詳細資訊。
日期與時間資料類型與函式 執行作業來處理日期和時間輸入值,以及傳回字串、數值,或日期和時間值。
Graph 函數 執行作業,以轉換圖形節點與邊緣識別碼的字元表示。
JSON 函式 驗證、查詢,或變更 JSON 資料。
邏輯函式 執行邏輯運算。
數學函式 根據函數參數所提供的輸入值來執行計算,以及傳回數值。
中繼資料函式 傳回資料庫和資料庫物件的相關資訊。
安全性函式 傳回使用者和角色的相關資訊。
字串函式 執行作業來處理字串 (charvarchar) 輸入值,並傳回字串或數值。
系統函式 執行作業,並傳回 SQL Server 執行個體中值、物件與設定的資訊。
系統統計函式 傳回系統的統計資訊。
文字和影像函式 執行作業來處理文字或影像輸入值或資料行,以及傳回值的相關資訊。

函數決定性

SQL Server 內建函數可能具決定性或不具決定性。 若每次使用一組特定輸入值來呼叫函數,函數都會傳回相同的值時,這些函數便具決定性。 若每次呼叫函數時都可能傳回不同結果 (即便使用同一組特定的輸入值也是如此) 時,這些函數便不具決定性。 如需詳細資訊,請參閱確定性與非確定性函式

函數定序

採取字元字串輸入、傳回字元字串輸出的函數,輸出會使用輸入字串的定序。

使用非字元輸入並傳回字元字串的函數,輸出會使用目前資料庫的預設定序。

採取多重字元字串輸入、傳回單一字元字串的函數,會利用定序優先順序的規則來設定輸出字串的定序。 如需詳細資訊,請參閱 定序優先順序 (Transact-SQL)

限制

如需函式類型和平臺限制的資訊,請參閱 CREATE FUNCTION

另請參閱