MySQL REPLACE() を使用した複数レコードの文字列の置換
不適切なエスケープによるデータベースの破損を修正するために、MySQL の REPLACE() 関数は複数の文字列の誤った文字列を効率的に置換するためのソリューション
クエリ内の REPLACE() 関数の構文は次のとおりです。
UPDATE MyTable SET StringColumn = REPLACE(StringColumn, 'SearchForThis', 'ReplaceWithThis') WHERE SomeOtherColumn LIKE '%PATTERN%'
たとえば、文字列に '<' が含まれている状況を考えてみましょう。文字が誤って「<」としてエスケープされました。これを修正するには、次のクエリを使用できます。
UPDATE MyTable SET StringColumn = REPLACE(StringColumn, '&lt;', '<') WHERE articleItem LIKE '%&lt;%';
WHERE 句によってパフォーマンスが大幅に向上する場合を除き、すべてのレコードを置換する方が高速になる可能性が高いため、WHERE 句を省略できることに注意してください。
複数の REPLACE() 呼び出しを連鎖させることもできます:
UPDATE MyTable SET StringColumn = REPLACE(REPLACE(StringColumn, 'GREATERTHAN', '>'), 'LESSTHAN', '<')
さらに、選択部分で REPLACE() を適用できます。ステージ:
SELECT REPLACE(MyURLString, 'GREATERTHAN', '>') AS MyURLString FROM MyTable以上がMySQL の REPLACE() 関数はどのようにして複数の破損した文字列レコードを効率的に修復できるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。