使用SQL查询查找并更新mysql中的当前live程序
我在mysql数据库中有一个表,其中包含本周的电视节目列表。是这样的使用SQL查询查找并更新mysql中的当前live程序,mysql,sql,select,Mysql,Sql,Select,我在mysql数据库中有一个表,其中包含本周的电视节目列表。是这样的 ---------------------------------------------- start_time, tv_program_name isLive 2013-01-19 17:00 sports news 2013-01-19 18:30 NBA.... ...... ------------------------------------------------ 我想使用SQ
----------------------------------------------
start_time, tv_program_name isLive
2013-01-19 17:00 sports news
2013-01-19 18:30 NBA....
......
------------------------------------------------
我想使用SQL通过比较start_time与now()来找出当前的电视节目,并用isLive=1在db中标记当前的电视节目
我尝试使用sql
-------------
SELECT *
FROM tv_programs
ORDER BY ABS( TIMESTAMPDIFF(
MINUTE , start_time, NOW( ) ) ) ASC
-------------
但这不是正确的解决方案,因为它只返回最接近当前的tv_节目
,而不是它正在播放的直播电视节目
谁能告诉我一些关于这个问题的信息吗 您正在查找更新查询吗
UPDATE tv_programmess
SET isLive = 1
WHERE start_time = Now()
从电视节目中选择*
如果开始时间没有结束时间
,那么如何知道程序是否已结束?是否总是有一个程序在运行?如果有结束时间,查询列表会更容易。是否只有一个频道?我认为应该是“更新xxxx”,但我认为这个答案足够好了。
SELECT * FROM tv_programs
WHERE start_time <= NOW()
ORDER BY start_time DESC
LIMIT 1;