我有一个按提醒日期排序的表格,然后是 ID
表看起来像:
ID | remind_date
1 2011-01-23
2 2010-02-21
4 2011-04-04
5 2011-04-04
6 2009-05-04
我正在使用 PHP 前端来向前和向后移动记录。我想要前进和后退按钮,但我遇到了 2 个相同的提醒日期的问题。
只是要注意 ID 不是按顺序排列的,它们在这里,但在实际数据库中,它们在按提醒日期排序时混淆了
我正在使用的选择语句是:($iid 是我所在的当前记录)
SELECT id FROM myDB.reminders where remind_date > (SELECT remind_date FROM myDB.reminders where id=$iid) order by remind_date ASC LIMIT 1
那么当我到达相同的日期时会发生什么,它会跳过一个,因为它要求提醒日期>。
如果我使用提醒日期 >= 它返回当前记录。然后我的解决方案是使用限制 2 并通过 PHP 检查第一条记录是否 = 我当前的 ID,如果它确实使用了下一个。但它有 3 个相同的日期或 4 个等..
我也考虑过使用 ID 字段,但由于它们乱序,我无法添加 ID > $iid。
有任何想法吗?除了 2 个相同的日期外,它的效果很好。