2017-05-29 94 views
1

如果列中不包含數字,且按標題* 1,如果第一個字母是數字,我想按標題排序。SQL ORDER BY「IF」

ORDER BY if(title REGEXP '^[0-9]+'=0,title,title*1) ASC 

什麼是假?

+1

請提供樣本數據和期望的結果。 –

+0

你確定* 1做你認爲它做的? – Mihai

回答

3

你想要第一個?數字或字母?

您的方法的問題是類型。所以,先決定你想要哪一個。 。 。說數字:

order by (title REGEXP '^[0-9]+') DESC, -- put numbers first 
     title + 0,      -- order by numbers as numbers 
     title       -- order by everything else 
+0

按標題排序+ 0,標題 - 這在我的例子中很好地感謝很多))) – Vesla

+0

@Vesla。 。 。這也可以工作,但它首先將非數字。 –

+0

好的)謝謝)))))) – Vesla