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

MySQLでのLCASE()関数のしくみ

    MySQLでは、LCASE() 関数はLOWER()の同義語です 。つまり、これらの関数のいずれかを使用して同じことを行うことができます。

    具体的には、両方の関数は、現在の文字セットマッピングに従って、大文字を小文字に変換します(デフォルトのマッピングはutf8mb4です )。

    構文

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

    LCASE(str)

    ここでstr 小文字に変更する文字列です。

    次に例を示します:

    SELECT 
      LCASE('CAT'),
      LOWER('CAT');

    結果:

    +--------------+--------------+
    | LCASE('CAT') | LOWER('CAT') |
    +--------------+--------------+
    | cat          | cat          |
    +--------------+--------------+

    バイナリ文字列

    これらの関数は、バイナリ文字列では機能しません。バイナリ文字列でそれらを使用する必要がある場合は、最初に文字列を非バイナリ文字列に変換する必要があります。次に例を示します:

    SET @str = BINARY 'Cat';
    SELECT 
      LCASE(@str) AS 'Binary', 
      LCASE(CONVERT(@str USING utf8mb4)) AS 'Nonbinary';
    

    結果:

    +--------+-----------+
    | Binary | Nonbinary |
    +--------+-----------+
    | Cat    | cat       |
    +--------+-----------+

    ビューでのLCASE()の使用

    注意すべきことの1つは、LCASE() 関数はビュー内で使用され、LOWER()として書き直されて保存されます。 。


    1. 指定された文字列を分割し、caseステートメントを準備します

    2. 演算子は存在しません:integer =? Postgresを使用する場合

    3. パフォーマンスのボトルネックをマップするためのWorkloadAnalyzerの理解

    4. データベース設計のベストプラクティスとヒントに関する13のブログ記事