我有這兩個表獨特的時間戳的行...只獲得匹配間隔
產品:
id product_id store_id
1 242234 54034
2 224222 83820
3 839202 24224
4 939284 54034
定價:
product_id last_update source
242234 2016-02-11 12:00:00 7
242234 2016-02-12 12:00:00 7
242234 2016-02-13 12:00:00 7
839202 2016-02-14 12:00:00 3
839202 2016-02-15 12:00:00 3
839202 2016-02-16 12:00:00 3
939284 2016-01-08 12:00:00 7
939284 2016-02-15 12:00:00 7
939284 2016-02-16 12:00:00 7
我想只有products.id
值,其只有超過3天以上的。如果沒有與定價表爲pricing.product_id
更近的更新行的話,我想忽略pricing.product_id
完全。
爲了做到這一點,我已經試過此查詢,但它仍然返回具有較新的條目標識:
SELECT
pps.id
FROM
pricing pr
JOIN
products pps
ON pps.product_id = pr.product_id
WHERE
pr.source = 7 AND
pps.store_id = 54034
GROUP BY
pps.id
HAVING
pr.last_update < NOW() - INTERVAL 3 DAY
ORDER BY
pr.last_update DESC;
從給出的例子,它應該只返回pps.id
= 242234
而是它也返回939284
。
我將如何構建我的這個查詢?
你問題似乎不錯,但您可以加入你所期望的結果格式?你想要從每個產品的價格表或最初的價格(不管產品是什麼)獲得最後一個價格表。什麼是源代碼和商店ID,我們應該考慮哪些約束? – davejal