指定された列内の最小データ値を返す集約関数です。
Synopsis
MIN([ALL | DISTINCT] expression)
MIN は、テーブルまたはビューを参照する
SELECT クエリまたは SELECT サブクエリで使用できます。
MIN は、一般のフィールド値とともに SELECT リストや HAVING 節で表示できます。
MIN は、WHERE 節では使用できません。SELECT がサブクエリの場合を除いて、JOIN の ON 節では
MIN を使用できません。
その他の集約関数とは異なり、ALL および DISTINCT キーワードは
MIN 内で何も実行しません。これらは、SQL92 の互換性のために用意されたものです。
MIN によって使用される指定されたフィールドは、数値または非数値です。最小値は照合順で最小の値に定義されます。したがって、'a' が最小のアルファベット値です。数値フィールドでは、ゼロ (0) または負の数値が存在している場合でも、空文字列 ('') は最小値として認識されます。
データ・フィールドの NULL 値は、
MIN 集約関数値を得る場合は無視されます。クエリから行が返されない場合や、すべての行に対するデータ・フィールド値が NULL の場合、
MIN は NULL を返します。
以下のクエリは、Sample.Employee データベース内の最低 (最小) 給与額を返します。
SELECT MIN(Salary) As LowSalary
FROM Sample.Employee
以下のクエリは、Sample.Employee データベース内で検出された照合順の最低 (最小) および最高 (最大) の名前を返します。
SELECT MIN(Name), MAX(Name)
FROM Sample.Employee
以下のクエリは、Sample.Employee データベース内の Home_State が VT である従業員の最低 (最小) 給与額を返します。
SELECT MIN(Salary)
FROM Sample.Employee
WHERE Home_State = 'VT'
以下のクエリは、Sample.Employee データベース内の Home_State ごとに、従業員数および最低 (最小) の従業員給与額を返します。
SELECT Home_State,
COUNT(Home_State) As NumEmployees,
MIN(Salary) As LowSalary
FROM Sample.Employee
GROUP BY Home_State
ORDER BY LowSalary