我想为MYSQL创建一个查询语句,它将为我提供项目的最新价格。表格包含与每个项目UnitPrice
配对的一堆价格(MIL_id)
)。但是,我想要每个项目的最新价格(UnitPrice
)(MIL_id
)每行还有一个ReqNum
列,每个条目都会递增,每个条目都会有一个Date
列。那么如何才能进行查询,以便获得最新价格(UnitPrice
)使用最新的Date
或ReqNum
?
到目前为止我所拥有的:
SELECT t1.VendorPtNum, t1.UnitPrice, MAX(t1.Date), MAX(t1.ReqNum), t2.MIL_id
FROM tblMatInvList t2
LEFT JOIN tblPurchaseReq t1 ON t1.VendorPtNum = t2.VendPtNum
GROUP BY t2.MIL_id
HAVING MAX(t1.Date)
答案 0 :(得分:1)
所以,你有一张桌子
<强> tblMatInvList 强>
-------------------- +
VendorPtNum | MIL_id
-------------------- +
和一个表
<强> tblPurchaseReq 强>
--------------------------------------- +
VendorPtNum | UnitPrice |日期| ReqNum
--------------------------------------- +
我认为你可以使用这样的东西
SELECT * FROM tblMatInvList
INNER JOIN
(SELECT MAX(Date) as date,
VendorPtNum
FROM tblPurchaseReq
GROUP BY tblPurchaseReq.VendorPtNum) prices
ON prices.VendorPtNum = tblMatInvList.VendorPtNum;