はじめに:
多くのアプリケーションは、特定の部分を変更する機能を必要としますデータベース内の文字列の。複数の行を個別に更新する必要がある場合、このタスクは面倒になる可能性があります。 MySQL は、この課題に対する便利な解決策を提供します。
解決策:
単一のクエリで複数の行の文字列の一部を更新するために、MySQL は REPLACE() 関数を提供します。この関数は、指定された部分文字列のすべての出現を新しい値に置き換えます。
構文:
UPDATE table_name SET column_name = REPLACE(column_name, 'substring_to_replace', 'new_substring') WHERE condition;
例:
という名前のフィールドを含む次のテーブル"description":
id | description |
---|---|
1 | something/string, something/stringlookhere |
2 | something/string/etcetera |
すべての行で出現するすべての "string" を "anothervalue" に置き換えるには、次のクエリを使用します。
UPDATE table_name SET description = REPLACE(description, 'string', 'anothervalue');
Result:
id | description |
---|---|
1 | something/anothervalue, something/anothervaluelookhere |
2 | something/string/etcetera |
注: のみを希望する場合指定された部分文字列を含む行を更新するには、クエリに WHERE 句を含めます。たとえば、「説明」フィールドに「文字列」が含まれる行のみを更新するには:
UPDATE table_name SET description = REPLACE(description, 'string', 'anothervalue') WHERE description LIKE '%string%';
以上が単一のクエリで MySQL の文字列の一部を更新するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。