[英]Select latest row from a group of options MySQL
我有一個包含一組選項和相關定價的表。 我們實現了版本控制,這意味着我們為具有相同時間戳的同一選項存儲了幾行。 每次我們更新價格時,都會創建帶有時間戳的新行。
我正在使用以下查詢:
SELECT
localizedOptionID,
uProfileID,
sOptionID,
MAX(datestamp),
localOptionName,
quantities
FROM
localisedProductOptions
WHERE
uProfileID = 2
AND sOptionID in ('BGCD','Q6G1','3BET')
GROUP BY sOptionID
ORDER BY MAX(datestamp)
它似乎只返回每一行的一個版本,但是不幸的是它似乎不是最新的。
誰能幫我設置查詢? 所有數據都包含在一個表中,因此我沒有使用任何聯接。
您可以嘗試下面提到的查詢來獲取需求數據
select localizedOptionID, uProfileID,sOptionID, datestamp,localOptionName,
quantities from localisedProductOptions WHERE uProfileID = 2 AND sOptionID in
('BGCD','Q6G1','3BET') and datestamp in(select MAX(datestamp) from
localisedProductOptions where uProfileID = 2 AND sOptionID in
('BGCD','Q6G1','3BET') GROUP BY sOptionID);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.