我做了一个php程序
该节目显示频道时间表
在频道页面中,我想显示当前节目和下一个节目,
在时间表表中,我在名为“when”的单元格中插入程序的时间
select when from Schedules where channel_id = 13
这将在时间戳中显示所有程序的时间
我只想输出当前程序,只输出下一个程序
抱歉英语不好
假设when
列是DATETIME
类型:
( SELECT * FROM Schedules where channel_id = 13 AND when <= NOW() ORDER BY when DESC LIMIT 1 )
UNION
( SELECT * FROM Schedules where channel_id = 13 AND when > NOW() ORDER BY when ASC LIMIT 1 )
我没有什么可以测试的,但是这个查询将获得频道 id 13 的所有时间表,这些时间表是在 $time 之后或之后安排的,我们按时间按 asc 顺序对所有这些结果进行排序,最后选择其中的前两个(这将是 $time 时的程序,之后的下一个程序)
SELECT field1,field2,when FROM Schedules where channel_id = 13 AND
when >= $time ORDER BY when ASC LIMIT 2
根据需要填写 field1、field2 和 $time 变量。