Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用SQL查询查找并更新mysql中的当前live程序_Mysql_Sql_Select - Fatal编程技术网

使用SQL查询查找并更新mysql中的当前live程序

使用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

我在mysql数据库中有一个表,其中包含本周的电视节目列表。是这样的

----------------------------------------------
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;