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

SQLでテキストを小文字に変更する方法

    問題:

    SQLで一部のテキストを小文字に変更したい。

    例:

    データベースには、item 次の列にデータがあります:idcode 、およびwood_type_usedwood_type_usedのデータでケースに一貫性がありません 桁。すべての種類の木材を小文字で表示したいと思います。

    id コード wood_type_used
    1 000237PSH
    2 000115MCH マホガニー
    3 000073BTB バーチ
    4 00068WBD wAlnUt
    5 00055BSH バーチ

    解決策:

    LOWER()を使用します 機能:

    SELECT
        code,
    LOWER(wood_type_used)
    FROM item;
    

    クエリは、小文字で書かれた木材タイプのアイテムを返します:

    code wood_type_used
    000237PSH
    000115MCH マホガニー
    000073BTB バーチ
    00068WBD クルミ
    00055BSH バーチ

    ディスカッション:

    SQLデータベースのテキストデータを小文字で表示する場合は、LOWER()を使用してください。 働き。この関数は、テキスト値が小文字で表示される文字列または列の名前を引数として取ります。元のテキストデータのバージョンを返します。このバージョンでは、すべての大文字が同等の小文字に置き換えられ、残りの文字は変更されません。

    ただし、LOWER()のアプリケーションは、テキストを統一的に表示することだけではありません。 働き。大文字と小文字を区別しないクエリ、つまり、探しているテキストデータが最初に大文字と小文字を区別する方法とは無関係なクエリでも役立つ場合があります。

    たとえば、上記の例の表では、白樺の木で作られたすべてのアイテムを検索したい場合があります。木材タイプの値は一貫して大文字と小文字が区別されないため、「birch」を持つすべての行をクエリするだけです。 wood_type_usedの’ リストされている製品のうち2つが明らかに白樺でできている場合でも、列は1行しか返しません。ここでLOWER() 入ってくる:

    SELECT *
    FROM item
    WHERE LOWER(wood_type_used) = ‘birch’;
    

    このようなクエリは、wood_type_usedに何らかの形式の「白樺」文字列を含むすべての行を返します。 元のデータでの値の大文字と小文字の区別に関係なく、列。検索するテキストも小文字で書くことを忘れないでください。


    1. MySQLにIPアドレスを保存する最も効率的な方法

    2. PDOプリペアドステートメントを使用して複数の行を挿入します

    3. sqliteでROW_NUMBERを使用する方法

    4. T-SQLサブクエリMax(Date)と結合