2014-02-06 95 views
0

我試圖從MySQL數據庫表中選擇信息,按照自定義模式對結果進行排序。MySQL按自定義模式排序

我想達成什麼

我在我的表中的列,可以有4個不同的值(類型條目)。

讓我們稱他們爲AAA,BBB,CCC,DDD和模式應該是這樣的:

AAA 
AAA 
BBB 
AAA 
CCC 
DDD 

所以我想一個表格排序是這樣的:

Before After 
AAA  AAA 
AAA  AAA 
AAA  BBB 
AAA  AAA 
AAA  CCC 
BBB  DDD 
BBB  AAA 
CCC  AAA 
DDD  BBB 

我曾嘗試FIELD()函數,但它不會按模式對它們進行排序。

我在考慮使用另一個表進行排序,但是我會針對不同的結果進行不同的查詢,並且我希望模式始終以相同的方式啓動。

由於我不確定這個選項甚至存在於MySQL中,我接受任何建議和解決方法。

編輯

OK,我的不是說這做了一個很大的錯誤。該表有多個列,ID爲AI主鍵。具有AAA,BBB,CCC,DDD的列是依賴於排序的列。

所以我想按這個專欄排序我的查詢,但是按照上面描述的方式。

+0

我不明白模式 – Strawberry

+0

我都沒有..... – Leo

+0

好吧,我想問題是與我在一起。讓我試着編輯這個問題,讓它變得更好。 – Alex

回答

0

我覺得這是公平地說,通常,如果在關係數據庫表中的一列可以有一個以上的記錄相同值,就往往是在其他值爲記錄賦予不同含義的列或記錄排序中的不同位置。

您將重點放在一列上,當您可能需要包含至少一個其他信息項以提供排序時。如果其他信息不在數據庫中,則可能需要將其放入數據庫中。

+0

我同意你的意見。這不是我唯一的專欄。請在上面的問題中檢查我的編輯。 – Alex