我在我的表中有一個字段「星星」。mysql排序位
1 means **
2 means ***
4 means ****
現在他們可以像3意味着2.5和6意味着3.5星。它只是兩個相鄰的值,所以像5不能發生。 這與輸出效果很好。現在的問題是分揀。現在我只是和場上的明星們分道揚。。顯然,這並不正常工作,因爲正確的順序是這樣的:
2.5stars, 3stars, 3.5stars
但這些意味着:
3,2,6
全面正確的排序是這樣的:
1,3,2,6,4,12,8,24,16
我有一個pagebrowser與限制和篩選一切,所以我不想選擇所有行和手動排序。有沒有辦法在我的查詢中直接進行這種排序?
編輯:
需要明確的是,這個來自按位..
00001 = **
00010 = ***
00011 == 2.5*
00100 = ****
爲什麼不把它作爲一個整數存儲?我看不出爲什麼你甚至想要做這樣的事情? – ircmaxell 2011-03-07 14:39:55
瘋狂的想法,但爲什麼不只是解決問題的來源(奇怪的1 = 2星,2 = 3開始等設置),而不是使用一些模糊的排序「修復」。 – 2011-03-07 14:40:43
這來自cms,不能真正改變它 – Flo 2011-03-07 14:42:59