我需要做的是從課堂,實驗室,演講廳,禮堂和禮堂中排序。然後我需要做的是按照他們的ID來安排他們。所以對於教室,我從1開始上升。在ORDER BY CASE中使用ASC/DESC()
我使用的唯一字段是roomID和類型列。 (應該改變類型看它是怎麼樣的一個SQL函數吧?)
SELECT *
FROM `rooms`
ORDER BY CASE WHEN `type` = 'Classroom'
THEN 1
WHEN `type` = 'Computer laboratory'
THEN 2
WHEN `type` = 'Lecture Hall'
THEN 3
WHEN `type` = 'Auditorium'
THEN 4
END
看起來很簡單,但我不能得到它的工作。所以,任何幫助將不勝感激,特別是因爲這可能是一個愚蠢的問題。
+1 @spinon你可能是對的,但我懷疑這不適用於不同的dB。例如一些你的需求和一些地方賽義德阿卜杜勒拉赫曼的是 – 2011-01-06 17:18:51
它的工作!最後一行應該是ORDER BY roomID,但是謝謝。所以如果我需要通過ASC或DESC來訂購任何東西,我必須首先對其他CASE進行「分組」。 – 2011-01-06 17:18:59