回答

收藏

获得每个项目的最新价格

技术问答 技术问答 54 人阅读 | 0 人回复 | 2023-09-13

我有一张表:
+ x: w5 `( Z2 M  `7 p: sItemID PurchaseDate Price 1913 .00 02 03/17/2013 .000 01 03/18/2013 .00 02 03/18/2013 .000 01 03/19/2013 .00/2013 .00我需要写一个,SQLquery以获取Price与PurchaseDate每一个最新对应ItemID。表中的条目不一定按日期顺序输入,如下:- Q) T- X! v( {+ c0 i
ItemID PurchaseDate Price 001 03/19/2013 .00 02 03/18/2013 .00/2013 .0000                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
) J  Z# Y+ b5 N1 O- u, K    解决方案:                                                                ! I4 Y. n! i) `! `9 V9 w3 i
                                                                子查询背后的想法是,它分别是PurchaseDate获取每个子的最新信息ItemID。然后将子查询的结果被接合回只要它对两个条件相匹配的表:ItemID和PurchaseDate。
$ v$ c' {1 ~: w4 f% NSELECT  a.*FROM    TableName a        INNER JOIN    SELECT  ItemID,MAX(PurchaseDate) max_date            FROM     TableName            GROUP   BY ItemID       b ON  a.ItemID = b.ItemID AND                a.PurchaseDate = b.max_date
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则