Pertanyaan Kompleks mysql ORDER BY


Melakukan kueri berikut:

SELECT title FROM table ORDER BY title

memberi saya:

"Hello"
"Zebra"
Apple
Beta
Cactus

Bagaimana saya akan ORDER BY karakter alfabet pertama, untuk mendapatkan:

Apple
Beta
Cactus
"Hello"
"Zebra"

?


5
2017-07-31 10:16


asal


Jawaban:


Anda harus menghapus tanda kutip sebelum menyortir data. Anda dapat dengan mudah menghapusnya menggunakan TRIM berfungsi di MySQL sebagai:

SELECT title 
FROM table 
ORDER BY TRIM(BOTH '"' FROM title);

6
2017-07-31 10:17



...ORDER BY REPLACE(title, '"', '');

3
2017-07-31 10:18



SELECT title FROM table ORDER BY TRIM(LEADING '"' FROM title)

3
2017-07-31 10:19