ฉันมีฐานข้อมูล MySQL ของคีย์เวิร์ดซึ่งปัจจุบันเป็นแบบผสม อย่างไรก็ตามฉันต้องการแปลงทั้งหมดเป็นตัวพิมพ์เล็ก มีคำสั่งง่ายๆในการทำเช่นนี้โดยใช้ MySQL หรือ MySQL และ PHP หรือไม่?
ฉันมีฐานข้อมูล MySQL ของคีย์เวิร์ดซึ่งปัจจุบันเป็นแบบผสม อย่างไรก็ตามฉันต้องการแปลงทั้งหมดเป็นตัวพิมพ์เล็ก มีคำสั่งง่ายๆในการทำเช่นนี้โดยใช้ MySQL หรือ MySQL และ PHP หรือไม่?
คำตอบ:
UPDATE table SET colname=LOWER(colname);
ascii_bin
ไม่แปลงทุกอย่างเป็นตัวพิมพ์เล็กโดยอัตโนมัติหรือฉันเข้าใจผิด?
ใช่ฟังก์ชั่นคือ LOWER () หรือ LCASE () (ทั้งคู่ทำสิ่งเดียวกัน)
ตัวอย่างเช่น:
select LOWER(keyword) from my_table
SELECT LOWER(foo) AS foo FROM bar
คุณสามารถใช้ฟังก์ชัน LOWER () หรือ LCASE ()
สามารถใช้ได้ทั้งในคอลัมน์หรือสตริงลิเทอรัล เช่น
SELECT LOWER(column_name) FROM table a;
หรือ
SELECT column_name FROM table a where column = LOWER('STRING')
LCASE () สามารถใช้แทน LOWER () ได้ในทั้งสองตัวอย่าง
คุณลองค้นหาดูไหม Google, คู่มือ ...
http://dev.mysql.com/doc/refman/5.1/en/string-functions.html#function_lower
mysql> SELECT LOWER('QUADRATICALLY');
-> 'quadratically'
เพียงใช้:
UPDATE `tablename` SET `colnameone`=LOWER(`colnameone`);
หรือ
UPDATE `tablename` SET `colnameone`=LCASE(`colnameone`);
ฟังก์ชันทั้งสองจะทำงานเหมือนกัน
น่าสนใจที่จะทราบว่าชื่อฟิลด์ถูกเปลี่ยนชื่อและหากคุณอ้างอิงในฟังก์ชันคุณจะไม่ได้รับค่าของมันเว้นแต่คุณจะให้นามแฝงแก่เขา (ซึ่งอาจเป็นชื่อของมันเองก็ได้)
ตัวอย่าง: ฉันใช้ฟังก์ชันเพื่อรับค่าชื่อฟิลด์แบบไดนามิก:
function ColBuilder ($field_name) {
…
While ($result = DB_fetch_array($PricesResult)) {
$result[$field_name]
}
…
}
ข้อความค้นหาของฉันคือ: SELECT LOWER (itemID), … ฯลฯ ..
จำเป็นต้องเปลี่ยนเป็น: SELECT LOWER (itemID) เป็น itemID , … ฯลฯ ..
ใช้LOWER
ฟังก์ชันเพื่อแปลงข้อมูลหรือสตริงเป็นตัวพิมพ์เล็ก
select LOWER(username) from users;
หรือ
select * from users where LOWER(username) = 'vrishbh';
ฉันเชื่อใน php คุณสามารถใช้ได้
strtolower()
ดังนั้นคุณสามารถสร้าง php เพื่ออ่านรายการทั้งหมดในตารางจากนั้นใช้คำสั่งนั้นเพื่อพิมพ์กลับเป็นตัวพิมพ์เล็ก