2011-10-19 45 views
2

我需要根據開始字母對查詢進行排序[order by]。Mysql按開頭字母排序

Ex。, 將會有一個標題欄。

我需要根據字母'e'進行排序。

需要的結果是,字母'e'開頭的字段應該先出現,其餘結果應該在之後出現。

回答

4
...ORDER BY CASE WHEN LEFT(title, 1) = 'e' THEN 1 ELSE 2 END, 
      title 
+0

精湛...感謝ü喬... – sathish

+0

@sathish很高興提供幫助。請點擊旁邊的複選標記,將此答案標記爲「已接受」。 –

+0

嗨喬,現在我需要根據指定的順序進行排序,例如,以'e'開頭的字母應該是第一個,然後是'r',然後是's'...你能幫助我嗎... – sathish

0
ORDER BY (SUBSTR(LOWER(title), 1, 1)='e') 
+0

你的解決方案不完整,你應該在最後通過ASC或DESC對結果進行排序。 –

+0

該要求不在問題中。 「其餘結果」並不意味着是否應該排序。 – ceejayoz

+0

但是字母'e'開頭的字段沒有排序就沒有先出現。 –