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

MariaDBでのLTRIM()のしくみ

    MariaDBでは、LTRIM() は、先頭のスペース文字が削除された文字列を返す組み込みの文字列関数です。

    構文

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

    LTRIM(str)

    str 先頭のスペースを削除する文字列です。

    基本的な例は次のとおりです。

    SELECT 
        '   Caribbean Sea   ' AS "Untrimmed",
        LTRIM('   Caribbean Sea   ') AS "Trimmed";

    結果:

    +---------------------+------------------+
    | Untrimmed           | Trimmed          |
    +---------------------+------------------+
    |    Caribbean Sea    | Caribbean Sea    |
    +---------------------+------------------+

    ここでは、最初の列はトリミングされておらず、2番目の列はLTRIM()でトリミングされています。 。

    文字列の左側だけがトリミングされていることがわかります。右側はそのままです。

    文字列内のスペースがそのまま残っていることもわかります。

    ヌル引数

    引数がnullの場合 、結果はnullです :

    SELECT LTRIM(null);

    結果:

    +-------------+
    | LTRIM(null) |
    +-------------+
    | NULL        |
    +-------------+

    Oracleモード

    でない場合 Oracleモードで実行している場合、結果が空の場合(つまり、長さがゼロの場合)、結果は空の文字列になります。

    ただし、Oracleモードで実行すると、結果はnullになります。 。

    ここではデフォルトモードになっています(つまり、 Oracleモードの場合):

    SELECT LTRIM('');

    結果:

    +-----------+
    | LTRIM('') |
    +-----------+
    |           |
    +-----------+

    それでは、Oracleモードに切り替えましょう:

    SET SQL_MODE=ORACLE;

    そして、コードを再度実行します:

    SELECT LTRIM('');

    結果:

    +-----------+
    | LTRIM('') |
    +-----------+
    | NULL      |
    +-----------+

    これを行う別の方法もあります。 Oracleモードに切り替える代わりに、LTRIM_ORACLE()を使用できます。 関数名として。

    デフォルトモードに戻しましょう:

    SET SQL_MODE=DEFAULT;

    そして、LTRIM_ORACLE()を実行します :

    SELECT LTRIM_ORACLE('');

    結果:

    +------------------+
    | LTRIM_ORACLE('') |
    +------------------+
    | NULL             |
    +------------------+

    引数がありません

    LTRIM()の呼び出し 引数がないとエラーになります:

    SELECT LTRIM();

    結果:

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

    1. IDで数百万行を削除する最良の方法

    2. java.library.pathにsqljdbc_authがありません

    3. PostgreSQL 9.0でデータベース作成時間を取得するにはどうすればよいですか?

    4. 結合されたテーブル列の個別の合計を取得します