請幫我擺脫我的頭痛.. 提前,我對我的壞語言,無論是在英語和MySQL的道歉。希望有人會理解這個問題.. :)mySQL查詢在24小時內找到最低的「活躍」價格
我有一個數據庫,任何人都可以記錄各種商店的各種產品的價格。下面的查詢是一個半理論的例子,可能根本不起作用,但它被翻譯用於說明我的挑戰。 查詢應該找到最低註冊價格爲給定的$產品在過去24小時內:
SELECT img, chain.chainid, chain.chainname, shops.shopid, shoplocation, shopname, prices.price, DATE_FORMAT(price.timestamp, '%e. %M %Y, %H:%i') AS time
FROM shops
INNER JOIN prices ON shops.shopid = prices.shopid
INNER JOIN chain ON shop.chainid = chain.chainid
WHERE prices.product = '$product'
AND timestamp > SUBTIME(NOW() , '24:0:0.000000')
ORDER BY price, timestamp DESC
LIMIT 1;
我怎樣才能確保我還是找到價格最低的店,即使最便宜的店今天上午有在白天提高價格(假設我的桌子上有兩個價格),另一家商店現在最便宜?
你能澄清你的問題嗎?請[編輯]它。您是否在尋找時間段內絕對最低的價格?或者你在尋找最低的當前價格?換句話說,如果產品出現新的記錄,在給定的商店價格更高,該記錄是否應取代舊記錄? –
如果確實是「*在過去24小時內*」 - 那麼你的問題沒有任何意義。 –
你想要一個表格兩次的結果,一次純粹按價格排序,另一個按最新排序。一個結果可以排除你的結果集中的其他結果。我會做兩個選擇並使用'UNION'。很好的問題,可惜有些人不明白。 – DanFromGermany