我正在寻找一个sql查询来获取下一次祷告之前的日期时间。例如,下一次祷告前5分钟。
ID , Prayer_ID, TIME
661, 1, 2016-10-01 04:57:00.000
662, 2, 2016-10-01 12:11:00.000
663, 3, 2016-10-01 15:34:00.000
664, 4, 2016-10-01 18:09:00.000
665, 5, 2016-10-01 19:39:00.000
666, 1, 2016-10-02 04:57:00.000
667, 2, 2016-10-02 12:10:00.000
668, 3, 2016-10-02 15:34:00.000
669, 4, 2016-10-02 18:08:00.000
670, 5, 2016-10-02 19:38:00.000
671, 1, 2016-10-03 04:57:00.000
672, 2, 2016-10-03 12:10:00.000
673, 3, 2016-10-03 15:33:00.000
674, 4, 2016-10-03 18:07:00.000
675, 5, 2016-10-03 19:37:00.000
让我们说下一个祷告时间是2016-10-01 15:34:00.000
。我要求的输出是2016-10-01 15:29:00.000
。输出是下次祷告之前准确5 minutes
的时间。
答案 0 :(得分:0)
你可以在当前的祈祷时间上添加-5分钟。 例如:
Select *, DateAdd(Minute, -5, [Time]) As AlertTime
From MyTable
但是,如果您在阅读当前记录时想要提醒下一条记录,则可以使用“提前”功能。
Select *, DateAdd(Minute, -5,
Lead([Time]) Over(order by ID)) As AlertTime
from myTable