2012-07-31 14 views
5

Facendo la seguente query:Complesso mysql ORDER BY

SELECT title FROM table ORDER BY title 

mi dà:

"Hello" 
"Zebra" 
Apple 
Beta 
Cactus 

Come dovrei dell'ordine da parte del primo carattere alfabetico, al fine di ottenere:

Apple 
Beta 
Cactus 
"Hello" 
"Zebra" 

?

risposta

6

Dovrai rimuovere le virgolette prima di ordinare i dati. Si può facilmente rimuoverli utilizzando TRIM funzione in MySQL come:

SELECT title 
FROM table 
ORDER BY TRIM(BOTH '"' FROM title); 
3
...ORDER BY REPLACE(title, '"', ''); 
3
SELECT title FROM table ORDER BY TRIM(LEADING '"' FROM title)