MySQL での複数の文字の置換
MySQL フィールド内の多数の文字を変更するタスクに直面した場合、REPLACE 関数では不十分です。単一文字の置換用に設計されています。
Can It Be Done早く?
はい! MySQL は、REPLACE 関数を連鎖するという解決策を提供します。
select replace(replace('hello world','world','earth'),'hello','hi')
このコマンドは、「hello」を「hi」に、「world」を「earth」に置き換え、「hi Earth」になります。
複数の置換のための高度なテクニック
より複雑な置換、サブクエリ、およびJOIN を使用できます:
サブクエリ:
select replace(london_english,'hello','hi') as warwickshire_english from ( select replace('hello world','world','earth') as london_english ) sub
このサブクエリは、「london_english」の「hello」を「hi」に置き換えます。
JOIN:
select group_concat(newword separator ' ') from ( select 'hello' as oldword union all select 'world' ) orig inner join ( select 'hello' as oldword, 'hi' as newword union all select 'world', 'earth' ) trans on orig.oldword = trans.oldword
この JOIN は 2 つのテーブルを結合して、1 つのクエリ内の複数の文字を置換します。
以上がMySQL フィールド内の複数の文字をすばやく置換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。