テーブル内の特定のフィールドでテキスト検索と置換を行う MySQL クエリはどれですか?
つまり、値を持つフィールドを持つレコードが になるように検索しfoo
て置換します。bar
hello foo
hello bar
UPDATE table_name
SET field = replace(field, 'string-to-find', 'string-that-will-replace-it');
UPDATE table SET field = replace(field, text_needs_to_be_replaced, text_required);
たとえば、John の出現箇所をすべて Mark に置き換えたい場合は、以下を使用します。
UPDATE student SET student_name = replace(student_name, 'John', 'Mark');
また、別のフィールドの値に基づいて検索および置換する場合は、CONCAT を実行できます。
update table_name set `field_name` = replace(`field_name`,'YOUR_OLD_STRING',CONCAT('NEW_STRING',`OTHER_FIELD_VALUE`,'AFTER_IF_NEEDED'));
他の人がすぐに見つけられるように、これをここに置くだけです。
文字列の置換機能がそれを行います。
上記のコマンド ラインを次のように使用しました。 update TABLE-NAME set FIELD = replace(FIELD, 'And', 'and'); 目的は、And を and に置き換えることでした (「A」は小文字にする必要があります)。問題は、データベースで「And」を見つけることができないことですが、「%And%」のように使用すると、単語の一部である他の多くの and や、既に小文字になっているものと一緒に見つけることができます。