oracle数据库中查询了多条id和name字段相同但create_time字段不同的记录,如何只取create_time时间最近的的一条记录最
时间: 2024-03-02 14:52:19 浏览: 48
oracle实现多字段匹配一个关键字查询(本人亲测,没毛病)
您可以使用Oracle中的ROW_NUMBER()函数来获取每个id和name组合中最新的记录,然后通过筛选条件来获取最新的记录。以下是一个示例查询:
```
SELECT id, name, create_time
FROM (
SELECT id, name, create_time,
ROW_NUMBER() OVER (PARTITION BY id, name ORDER BY create_time DESC) rn
FROM your_table
) t
WHERE rn = 1;
```
在上面的查询中,使用ROW_NUMBER()函数来为每个id和name组合中的记录分配一个行号,按照create_time字段的降序排列。然后通过WHERE条件来选择行号为1的记录,即每个组合中的最新记录。
阅读全文