MAX (Transact-SQL)

傳回運算式中的最大值。後面可能接著 OVER 子句

主題連結圖示Transact-SQL 語法慣例

語法

MAX ( [ ALL | DISTINCT ] expression )  

引數

  • ALL
    將彙總函數套用至所有值。ALL 是預設值。
  • DISTINCT
    指定要考量每個唯一值。DISTINCT 對 MAX 沒意義,只適用於 SQL-92 相容性。
  • expression
    這是一個常數、資料行名稱或函數,或算術、位元和字串運算子的任何組合。MAX 可以搭配數值、字元和 datetime 資料行使用,但不能搭配 bit 資料行使用。不允許彙總函數和子查詢。

    如需詳細資訊,請參閱<運算式 (Transact-SQL)>。

傳回類型

傳回與 expression 相同的值。

ms187751.note(zh-tw,SQL.90).gif重要事項:
當您使用 CUBE 或 ROLLUP 時,不支援個別彙總,如 AVG(DISTINCT column_name)、COUNT(DISTINCT column_name)、MAX(DISTINCT column_name)、MIN(DISTINCT column_name) 和 SUM(DISTINCT column_name)。如果使用它們的話,Microsoft SQL Server 2005 Database Engine 會傳回錯誤訊息,且會取消查詢。

備註

MAX 會忽略任何 Null 值。

如果是字元資料行,MAX 會在定序順序中尋找最高值。

範例

下列範例會傳回最高 (最大) 稅率。

USE AdventureWorks;
GO
SELECT MAX(TaxRate)
FROM Sales.SalesTaxRate;
GO

以下為結果集:

------
19.60

(1 row(s) affected)

Warning, null value eliminated from aggregate.

請參閱

參考

彙總函數 (Transact-SQL)
OVER 子句 (Transact-SQL)

說明及資訊

取得 SQL Server 2005 協助