如何从Oracle SQL中的2个表中提取每个ID的最新记录[重复]
Posted
技术标签:
【中文标题】如何从Oracle SQL中的2个表中提取每个ID的最新记录[重复]【英文标题】:how to pull latest record for each ID from 2 tables in Oracle SQL [duplicate] 【发布时间】:2021-11-02 05:53:33 【问题描述】:我有 2 个表名为 - Product 和 sold_product
sold_product
product_code sold_date product_id product_rating
46077862546 18/08/21 380 3.5
41237862546 18/08/21 300 5.0
41237862789 06/08/21 356 4.0
产品
product_id product_name rack_no
380 Television 5
344 Refridgerator 4
333 Air Conditioner 6
现在我需要为每个带有 product_code 和 product_name 的 product_id 提取最新的 sold_date。 每个 product_id 在产品表中都有一个(唯一)条目。
【问题讨论】:
最新的sold_date
显然是max(sold_date)
【参考方案1】:
试试下面这样:
select p.product_id, s.product_code, p.product_name, max(s.sold_date)
from product p
left join sold_product s on s.product_id = p.product_id
group by p.product_id, s.product_code, p.product_name
【讨论】:
【参考方案2】:试试这个:
select ap.prid,ap.prcode, a.name, ap.MaxDate from product a,(select prCode,prid, max(soldDate) as MaxDate
from sold_product
group by prid) ap where a.id=ap.prid;
【讨论】:
以上是关于如何从Oracle SQL中的2个表中提取每个ID的最新记录[重复]的主要内容,如果未能解决你的问题,请参考以下文章