我希望有人可以給我一個關於這個問題的大方向:MySQL:將多個MAX()選擇與數組結合的最佳方式?
起點是db記錄的ID數組。
array ids = [45,23,14,7];
這些記錄對一些列,即
id,price,rating
7,$5.00,5
14,$2.00,4
23,$5.00,2
45,$5.00,5
我需要是
- 與MAX(PRICE)(或東西等效)的項目。
- 如果存在多個價格相同的物品,請獲取最大(評級)(或等價物)的物品。
- 最後,如果仍有多個項目,則取數組中第一個。
我特別堅持第3點。有沒有辦法在(我的)SQL中做到這一點,或者我應該在代碼中做到這一點?
謝謝您的閱讀。
嗯,其實如果你想'先在array'則數組是以某種方式訂購的。所以解決方案是在SQL中應用相同的排序條件 – 2012-03-13 20:46:29
是的,數組的順序沒有問題。但是我不確定結果是否會保持這個順序,或者我得到結果後如何應用該順序。 – marimba 2012-03-13 20:48:38