MySQL LEAST()
関数は、値のリストから最小の値を返す比較関数です。
値のリストは複数の引数として提供されます。つまり、LEAST()
引数のリストから最小値の引数を返します。
構文
LEAST()
の構文 このようになります:
LEAST(value1,value2,...)
各引数はコンマで区切られます。この関数はそれらすべてを比較し、最小値のものを返します。
例1-数値の比較
すべての引数が整数の場合、それらは整数として比較されます。
SELECT LEAST(12, 120, 2400) AS 'Result';
結果:
+--------+ | Result | +--------+ | 12 | +--------+
少なくとも1つの引数が倍精度の場合、それらは倍精度値として比較されます。それ以外の場合、少なくとも1つの引数がDECIMAL
の場合 値、それらはDECIMAL
として比較されます 値。
SELECT LEAST(12, 120.00, 2400) AS 'Result';
結果:
+--------+ | Result | +--------+ | 12.00 | +--------+
戻り値を決定するための正確なルールについては、以下を参照してください。
例2–文字列の比較
文字列を比較する例を次に示します。
SELECT LEAST('a', 'b', 'c') AS 'Result';
結果:
+--------+ | Result | +--------+ | a | +--------+
もう1つあります:
SELECT LEAST('Aardvark', 'Dog', 'Rat') AS 'Result';
結果:
+----------+ | Result | +----------+ | Aardvark | +----------+
例3–NULL値
引数のいずれかがNULL
の場合 、結果はNULL
です 。
SELECT LEAST('a', NULL, 'c') AS 'Result';
結果:
+--------+ | Result | +--------+ | NULL | +--------+
比較ルール
戻り値を決定する際には、特定の規則が適用されます。これらのルールは次のとおりです。
- 引数が
NULL
の場合 、結果はNULL
です 。比較する必要はありません。 - すべての引数が整数値の場合、それらは整数として比較されます。
- 少なくとも1つの引数が倍精度の場合、それらは倍精度値として比較されます。それ以外の場合、少なくとも1つの引数が
DECIMAL
の場合 値、それらはDECIMAL
として比較されます 値。 - 引数が数字と文字列の組み合わせで構成されている場合、それらは数字として比較されます。
- 引数が非バイナリ(文字)文字列の場合、引数は非バイナリ文字列として比較されます。
- 他のすべての場合、引数はバイナリ文字列として比較されます。