我有一个表,其中存储了这样一个人的状态更改历史记录:
id | username | date | status
日期字段是状态更新的时间,状态字段包含此人自该日期以来的新状态。
所以我表中的日期可能是这样的:
1 | 塞拉芬| 2012-03-03 | “新的” 2 | 约翰 | 2012-03-05 | “新的” 3 | 塞拉芬| 2012-03-13 | “待办的” 4 | 塞拉芬| 2012-03-15 | “老的” 5 | 约翰 | 2012-03-05 | “待办的”
等等等等
现在,我想要一个查询,在过去的特定日期将检索每个用户当时的状态。例如,对于 2012-04-14 我想得到以下结果
塞拉芬| “待办的” 约翰 | “新的”
对于 2012-03-04 我应该得到
塞拉芬| “新的”
任何人都可以想到一个可以做到这一点的 SQL 查询吗?我不想以编程方式执行此操作!我正在使用mysql,但我认为这与我的问题无关......
提前致谢