一千萬個為什麽

搜索

Mysql查詢 - 按工作順序排序

我正在運行Mysql 5.0.77,我很確定這個查詢應該有效嗎?

選擇 * FROM purchase WHERE time_purchased BETWEEN'2010-04-15 00:00:00'EN'2010-04-18 23:59:59' ORDER BY time_purchased ASC,order_total DESC

time_purchased是DATETIME和索引。

order_total是DECIMAL(10,2),而不是索引。

我想按日期(最少到最大)訂購所有購買,然後按訂單總數(最大到最小)訂購。

所以我輸出類似於:

2010-04-15 100美元

2010-04-15 80美元

2010-04-15 $ 20

2010-04-16 $ 170

2010-04-16 $ 45

2010-04-16 15美元

2010-04-17 $ 274

.. 等等。

我從該查詢獲得的輸出正確地按順序排列日期,但它似乎根本不對訂單總計列進行排序。思考?

謝謝。

最佳答案

SELECT date(time_purchased), order_total
FROM purchases 
WHERE time_purchased BETWEEN '2010-04-15 00:00:00' AND '2010-04-18 23:59:59' 
ORDER BY date(time_purchased) ASC, order_total DESC

轉載註明原文: Mysql查詢 - 按工作順序排序