【发布时间】:2020-02-07 20:46:02
【问题描述】:
我有一个按日期排序的记录表。每天最多有 1 条记录,但有些日子没有记录(周末和银行假日)。
当我按日期查询记录时,如果当天不存在记录,我会对按日期的上一条记录感兴趣。例如:
SELECT * FROM rates WHERE date <= $mydate ORDER BY date DESC LIMIT 1;
给定一个日期列表,我将如何构造一个查询以返回与每个日期的确切或最接近的先前记录匹配的多条记录?这可以在单个查询中实现吗?
日期数组可能分布在很长的时间范围内,但我不一定希望整个时间跨度中的每条记录(例如,查询 20 个日期分布在一年的时间跨度内)。
【问题讨论】:
-
向我们展示一些示例表数据和预期结果。 (作为格式化文本,而不是图像。)
标签: sql database postgresql