两个表
表名: product t_product
字段: product_id product_name product_id start_date int_rate
t_product的product_id引用product表中的product_id
product是1 t_product是多
t_product纪录产品的汇率 同一个产品经常会添加新的汇率
我想联合这两个表一次查询出
产品id(product_id), 产品名称(product_name), 汇率的公布时间(start_date), 汇率(int_rate)
条件是 每种产品只取一条 每个产品取日期最近的那条记录。
------解决方案--------------------
- SQL code
SELECT p.product_id, p.product_name, t.start_date, t.int_rate FROM (SELECT p.* ,t.* ,rownum over(PARTITION BY t.product_id ORDER BY t.start_date DESC) rn FROM product p LEFT JOIN t_product t ON p.product_id = t.product_id) WHERE rn = 1
------解决方案--------------------
是写错了
row_number() over()