มีคำสั่ง MySQL เพื่อแปลงสตริงเป็นตัวพิมพ์เล็กหรือไม่?


123

ฉันมีฐานข้อมูล MySQL ของคีย์เวิร์ดซึ่งปัจจุบันเป็นแบบผสม อย่างไรก็ตามฉันต้องการแปลงทั้งหมดเป็นตัวพิมพ์เล็ก มีคำสั่งง่ายๆในการทำเช่นนี้โดยใช้ MySQL หรือ MySQL และ PHP หรือไม่?


ฉันเดาว่าคุณกำลังใช้การถ่ายโอนข้อมูลจากเพื่อนที่คิดว่าควรจัดเก็บชื่อผู้ใช้ด้วยตัวพิมพ์ใหญ่
ควาย

คำตอบ:


248
UPDATE table SET colname=LOWER(colname);

หากตั้งค่าการเรียงคอลัมน์เป็นแบบนี้จะascii_binไม่แปลงทุกอย่างเป็นตัวพิมพ์เล็กโดยอัตโนมัติหรือฉันเข้าใจผิด?
oldboy



9

คุณสามารถใช้ฟังก์ชัน LOWER () หรือ LCASE ()

สามารถใช้ได้ทั้งในคอลัมน์หรือสตริงลิเทอรัล เช่น

SELECT LOWER(column_name) FROM table a;

หรือ

SELECT column_name FROM table a where column = LOWER('STRING')

LCASE () สามารถใช้แทน LOWER () ได้ในทั้งสองตัวอย่าง



1

เพียงใช้:

UPDATE `tablename` SET `colnameone`=LOWER(`colnameone`);  

หรือ

UPDATE `tablename` SET `colnameone`=LCASE(`colnameone`);

ฟังก์ชันทั้งสองจะทำงานเหมือนกัน


0

น่าสนใจที่จะทราบว่าชื่อฟิลด์ถูกเปลี่ยนชื่อและหากคุณอ้างอิงในฟังก์ชันคุณจะไม่ได้รับค่าของมันเว้นแต่คุณจะให้นามแฝงแก่เขา (ซึ่งอาจเป็นชื่อของมันเองก็ได้)

ตัวอย่าง: ฉันใช้ฟังก์ชันเพื่อรับค่าชื่อฟิลด์แบบไดนามิก:

function ColBuilder ($field_name) {

While ($result = DB_fetch_array($PricesResult)) {
$result[$field_name]
}

}

ข้อความค้นหาของฉันคือ: SELECT LOWER (itemID), … ฯลฯ ..

จำเป็นต้องเปลี่ยนเป็น: SELECT LOWER (itemID) เป็น itemID , … ฯลฯ ..


นี่ฟังดูไม่เหมือนคำตอบหรือ?
Dieter Meemken

คำตอบเสร็จสมบูรณ์เตือนว่าการใช้ LOWER () ในบางสถานการณ์อาจไม่ได้ผลลัพธ์ที่คาดหวังหากไม่มีนามแฝงเพิ่มเติม
HD FrenchFeast

-3

ใช้LOWERฟังก์ชันเพื่อแปลงข้อมูลหรือสตริงเป็นตัวพิมพ์เล็ก

select LOWER(username) from users;

หรือ

select * from users where LOWER(username) = 'vrishbh';

6
สิ่งนี้เพิ่มอะไรที่ไม่ได้อยู่ในคำตอบของห้าขวบ ?
Andrew

-6

ฉันเชื่อใน php คุณสามารถใช้ได้

strtolower() 

ดังนั้นคุณสามารถสร้าง php เพื่ออ่านรายการทั้งหมดในตารางจากนั้นใช้คำสั่งนั้นเพื่อพิมพ์กลับเป็นตัวพิมพ์เล็ก


OP ร้องขอ MySQL หรือ MySQL / PHP
starryknight64
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.