用mysql语句筛选出每个商品生成时间最近的三条信息,表sheet_buy有item_id,happen_time两个字段
时间: 2024-04-09 14:33:56 浏览: 59
mysql一些sql语句,查看表信息
要筛选出每个商品生成时间最近的三条信息,可以使用子查询和窗口函数来实现。下面是一个示例:
```sql
SELECT item_id, happen_time
FROM (
SELECT item_id, happen_time,
ROW_NUMBER() OVER (PARTITION BY item_id ORDER BY happen_time DESC) AS row_number
FROM sheet_buy
) AS subquery
WHERE row_number <= 3;
```
在这个示例中,我们使用了子查询和窗口函数 `ROW_NUMBER()` 来为每个商品的信息生成递增的序号,按 `happen_time` 字段进行降序排序。然后,外部查询选择序号小于等于3的记录,即每个商品生成时间最近的三条信息。
你需要将 `sheet_buy` 替换为实际的表名,`item_id` 和 `happen_time` 替换为实际的字段名。这样,你就可以筛选出每个商品生成时间最近的三条信息了。
阅读全文