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

SQLを使用してMySQLデータベースでテキストを検索および置換する方法

    MySQLデータベースには便利でシンプルな文字列関数REPLACE()があり、一致する文字列(from_string)を持つテーブルデータを新しい文字列(to_string)に置き換えることができます。これは、会社名、郵便番号、URLの変更、スペルミスなど、多くのレコードや行に影響を与えるテキスト文字列を検索して置き換える必要がある場合に役立ちます。

    REPLACEの構文は次のとおりです。

    REPLACE(text_string, from_string, to_string)

    MySQLリファレンスでは、REPLACEを、文字列from_stringのすべての出現箇所を文字列to_stringに置き換えた文字列text_stringを返す関数として説明しています。ここで、from_stringを検索する場合、照合では大文字と小文字が区別されます。 text_stringは、データベーステーブルのフィールドからも取得できます。

    ほとんどのSQLコマンド、特にSELECTおよびUPDATE操作ステートメントはREPLACE()関数を使用できます。

    たとえば、REPLACE関数を使用したUPDATE SQLコマンドの構文:

    update TABLE_NAME set FIELD_NAME = replace(FIELD_NAME, 'find this string', 'replace found string with this string');

    例として:

    update client_table set company_name = replace(company_name, 'Old Company', 'New Company')

    上記のステートメントは、client_tableテーブルのcompany_nameのフィールドにある「OldCompany」のすべてのインスタンスを「NewCompany」に置き換えます。

    SQLECTクエリの別の例:

    SELECT REPLACE('www.mysql.com', 'w', 'Ww');

    上記のステートメントは、結果として「WwWwWw.mysql.com」を返します。 REPLACE関数はマルチバイトセーフです。


    1. SQL Server:CROSSJOINとFULLOUTER JOINの違いは何ですか?

    2. AUTONOMOUS_TRANSACTION

    3. MySQLの単一引用符、二重引用符、およびバッククォート

    4. 複数テーブルのチェック制約を作成するにはどうすればよいですか?