sql >> データベース >  >> RDS >> MariaDB

MariaDBでLEAST()がどのように機能するか

    MariaDBでは、LEAST() は、引数のリストから最小(つまり最小/最小値)の引数を返す組み込み関数です。

    最高を取得するには 値、GREATEST()を使用 。

    構文

    構文は次のようになります:

    LEAST(value1,value2,...)

    ここで、value1,value2,… 最小/最小値を返す2つ以上の引数です。

    次に例を示します:

    SELECT LEAST(3, 8);

    結果:

    +-------------+
    | LEAST(3, 8) |
    +-------------+
    |           3 |
    +-------------+

    より多くの引数を使用する別の例を次に示します。

    SELECT LEAST(10, 7, 9, 12, 80, 8, 14);

    結果:

    +--------------------------------+
    | LEAST(10, 7, 9, 12, 80, 8, 14) |
    +--------------------------------+
    |                              7 |
    +--------------------------------+

    表現

    引数には、次のような式を含めることができます:

    SELECT LEAST(2 * 3, 1 * 3);

    結果:

    +---------------------+
    | LEAST(2 * 3, 1 * 3) |
    +---------------------+
    |                   3 |
    +---------------------+

    文字列

    引数は数値である必要はありません。たとえば、文字列の比較は次のとおりです。

    SELECT LEAST('a', 'b', 'c');

    結果:

    +----------------------+
    | LEAST('a', 'b', 'c') |
    +----------------------+
    | a                    |
    +----------------------+

    日付

    日付文字列の比較は次のとおりです:

    SELECT LEAST('2020-01-01', '2021-01-01');

    結果:

    +-----------------------------------+
    | LEAST('2020-01-01', '2021-01-01') |
    +-----------------------------------+
    | 2020-01-01                        |
    +-----------------------------------+

    混合タイプ

    MariaDBのドキュメントには、引数のいずれかが大文字と小文字を区別する文字列である場合、引数は大文字と小文字を区別する文字列として比較されると記載されています。ただし、混合タイプを使用すると、予期しない結果が発生し、警告が表示される場合があります。

    例:

    SELECT LEAST('Cat', 10);

    結果:

    +------------------+
    | LEAST('Cat', 10) |
    +------------------+
    |                0 |
    +------------------+
    1 row in set, 1 warning (0.000 sec)

    警告を確認してください:

    SHOW WARNINGS;

    結果:

    +---------+------+-----------------------------------------+
    | Level   | Code | Message                                 |
    +---------+------+-----------------------------------------+
    | Warning | 1292 | Truncated incorrect DOUBLE value: 'Cat' |
    +---------+------+-----------------------------------------+

    ヌル引数

    LEAST() nullを返します 引数がnullの場合 :

    SELECT LEAST(1, null, 3);

    結果:

    +-------------------+
    | LEAST(1, null, 3) |
    +-------------------+
    |              NULL |
    +-------------------+

    引数がありません

    LEAST()を呼び出す 引数の数が間違っているか、引数がない場合、エラーが発生します:

    SELECT LEAST();

    結果:

    ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LEAST'

    そして:

    SELECT LEAST(10);

    結果:

    ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LEAST'

    1. 単一の行をロックする方法

    2. MySQLでNULL値のないレコードを選択する方法

    3. 簡単な例を含むSQLServerRAISERRORステートメント

    4. MySqlエラー:このストアド関数/トリガーを呼び出したステートメントによって既に使用されているため、ストアド関数/トリガーのテーブルを更新できません