MariaDB, WordPress replace เปลี่ยน อีเมล หรืออีเมล์ ตามท่านราชบัณฑิตยสภา
ราชบัณฑิตยสภากำหนดให้คำทับศัพท์ e-mail เขียนว่า “อีเมล” (ไม่มี ล์) ซึ่งถูกต้องตามหลักเกณฑ์การทับศัพท์ภาษาอังกฤษที่ใช้ l เพียงตัวเดียว การเขียน อีเมล (เติม ล์) เป็นที่นิยมจากการเทียบเคียงคำว่า “เมล” (รถเมล) แต่ไม่สอดคล้องกับตัวสะกดจริงของคำต้นฉบับ จึงแนะนำให้ใช้ “อีเมล” เพื่อมาตรฐานทางภาษาที่ถูกต้อง
เป็นคำที่ใช่บ่อย ๆ ด้วยที่นี้ถ้าจะต้องมาไล่หาที่ละบทความเพื่อเปลี่ยนทีละบทความมันก็เยอะ ดังนั้นใช้ replace แทนที่ ของ MySQL / MariaDB แก้บทความ WordPress จะง่ายกว่า
SQL
UPDATE wp_posts
SET post_content = REPLACE (post_content, 'เมล', 'เมล') WHERE post_content LIKE '%เมล%';
สบายกว่ากัน เยอะ สบายกว่ากัน เยอะ สบายกว่ากัน เยอะเลย
ทำความรู้จักกับ Function REPLACE ()
ฟังก์ชัน REPLACE (str, from_str, to_str) ทำหน้าที่ค้นหาข้อความที่ระบุและแทนที่ด้วยข้อความใหม่ใน String นั้น ๆ
REPLACE (ชื่อคอลัมน์, 'คำที่ต้องการเปลี่ยน', 'คำใหม่') ;
ที่เราเพิ่งใช้ไปคือ
REPLACE (post_content, 'เมล', 'เมล')
วิธีการนำไปใช้จริง (Step-by-Step)
การแก้ข้อมูลควรจะทำเต็มรูปแบบ เพื่อป้องกันความผิดพลาด
ตรวจสอบข้อมูลก่อนแก้ (Dry Run)
ก่อนจะรันคำสั่งแก้ไขจริง (Update) เราควร SELECT มาดูก่อนว่ามีข้อมูลไหนที่จะถูกเปลี่ยนบ้าง และเปลี่ยนแล้วหน้าตาเป็นอย่างไร เพื่อป้องกันความผิดพลาดครับ
SQL
SELECT post_content AS original, REPLACE (post_content, 'เมล', 'เมล') AS preview
FROM wp_posts WHERE post_content LIKE '%เมล%';