2011-06-27 179 views
2

我試圖訂購MySQL基於用戶設置的數據在他們的行下的字段中的數據的結果。MySQL查詢排序

我有一個名爲「分配」表中,設置了這樣的:

id user_id item_id 
-- ------- ------- 
1 1  1 
2 1  23 
3 1  304 

我希望能夠在此基礎上進行存儲這樣的用戶表訂購這些結果:

3,1,2 

有沒有想法?

+0

情景不明確。你想根據另一個表對查詢結果進行排序嗎? – mahadeb

回答

2

您可以使用域選項:

SELECT * FROM assigned ORDER BY FIELD(id,3,1,2) 

其中id是您要訂購和以下是命令ID的表的字段。

1

你應該使用關鍵字ORDER BY得到的結果命令你所希望的方式:你會

ORDER BY user_id 

如果它不回答你的問題,請

SELECT column_name(s) 
FROM table_name 
ORDER BY column_name(s) ASC|DESC 
你的情況

更準確地告訴我們你想要什麼。

最大值

0

您不應該假定關係數據庫中的表中的行具有任何隱式排序。即當今'SELECT * FROM users'可能會按照你想要的順序返回數據時,它明天可能會有所不同。

儘管MySQL與其他關係數據庫相比,原則上這同樣適用於列,但它確實允許您顯式聲明列順序。

向用戶表中添加一列,指示序號值並對其進行排序並將其與指定的表進行連接。

+0

我想要做的是按照用戶帳戶中的數組來排序一組數據。 –