- รับลิงก์
- X
- อีเมล
- แอปอื่นๆ
สมมุติข้อมูลเป็นแบบนี้
- กสุมา
- เกศริน
- โกสุม
- ไกยเกษี
- ใกรธร
โดยปกติ เราก็จะใช้ " LIKE 'ก%' "
SELECT * FROM `alphabet` WHERE `NAME` LIKE 'ก%'
ผลที่ออกมาคือ มันจะออกมาแต่ กสุมา ครับ เพราะมันขึ้นต้นด้วย ก ส่วนอันอื่นมันไม่ได้ขึ้นต้นด้วย ก แล้วเราจะแก้ปัญหานี้แย่างไร
SELECT * FROM `alphabet`
WHERE `NAME` LIKE 'ก%' OR (
`NAME` LIKE '_ก%' AND SUBSTR(`NAME`,1,1) IN ('โ', 'เ', 'แ', 'ไ', 'ใ'))
ORDER BY `NAME` ASC
- เลือกตัวอักษรที่ขึ้นต้นด้วย ก
- เลือกตัวอักษรที่สองเป็น ก และ ตัวแรกเป็นสระ
- เรียงจากน้อยไปมาก หรือ เรียงลำดับตามภาษาไทย
ผลที่ออกมาก็จะได้แบบนี้ครับ ก่อน Query เรียงตามชื่อจะได้แบบนี้
หลังจาก Query แล้วจะได้แบบนี้
ความคิดเห็น
แสดงความคิดเห็น