Menggantikan Berbilang Aksara dalam MySQL
Apabila berhadapan dengan tugas mengubah suai banyak aksara dalam medan MySQL, fungsi REPLACE menjadi pendek, kerana ia direka untuk penggantian satu aksara.
Bolehkah Ia Dilakukan Cepat?
Ya! MySQL menawarkan penyelesaian: merantai fungsi REPLACE.
select replace(replace('hello world','world','earth'),'hello','hi')
Arahan ini menggantikan "hello" dengan "hi" dan "world" dengan "earth," menghasilkan "hi earth."
Teknik Lanjutan untuk Penggantian Berbilang
Untuk penggantian yang lebih kompleks, subqueries dan JOIN boleh bekerja:
Subqueries:
select replace(london_english,'hello','hi') as warwickshire_english from ( select replace('hello world','world','earth') as london_english ) sub
Subkueri ini menggantikan "hello" dengan "hai" dalam medan "london_english".
SERTAI:
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
SERTAI ini menggabungkan dua jadual untuk menggantikan berbilang aksara dalam satu pertanyaan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggantikan Berbilang Aksara dengan Cepat dalam Medan MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!