แนวทาง คำสั่ง SQL เรียงข้อมูลภาษาไทย และภาษาอังกฤษในฟิลด์เดียวกัน

แนวทาง คำสั่ง SQL เรียงข้อมูลภาษาไทย และภาษาอังกฤษในฟิลด์เดียวกัน

ตารางข้อมูลตัวอย่าง

1
2
3
4
5
6
7
8
9
10
11
12
CREATE TABLE tbl
    (`id` int, `data` varchar(9))
;
      
INSERT INTO tbl
    (`id`, `data`)
VALUES
    (1, 'ภาษาไทย'),
    (2, 'English'),
    (3, 'การศึกษา'),
    (4, 'Education')
;


คำสั่ง SQL

1
2
3
4
5
6
7
8
9
10
11
12
(SELECT
a.data,'th' lang
FROM tbl a
WHERE NOT a.data REGEXP '[A-Za-z0-9]'
)
UNION ALL
(SELECT
b.data,'en' lang
FROM tbl b
WHERE b.data REGEXP '[A-Za-z0-9]'
)
ORDER BY lang DESC,CONVERT(data using tis620) ASC


ผลลัพธ์




< Back รวม Snippets










เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ