Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.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
MYSQL时间戳比较_Mysql_Timestamp - Fatal编程技术网

MYSQL时间戳比较

MYSQL时间戳比较,mysql,timestamp,Mysql,Timestamp,我有一个表,表中有一列Time存储时间戳值,一列存储Name和一列存储状态 我试图找到一个查询来更新给定时间戳之前的所有条目,如下所示: UPDATE `Table` SET Status=1 WHERE Name='personname' AND 'Time'<'2012-12-23 18:00:00' UPDATE`Table` 设置状态=1 其中Name='personname'和'Time'比较字符串文字'Time': 'Time'<'2012-12-23 18:00:0

我有一个表,表中有一列
Time
存储时间戳值,一列存储
Name
和一列存储
状态

我试图找到一个查询来更新给定时间戳之前的所有条目,如下所示:

UPDATE `Table` 
SET Status=1
WHERE Name='personname' AND 'Time'<'2012-12-23 18:00:00'
UPDATE`Table`
设置状态=1

其中Name='personname'和'Time'比较字符串文字
'Time'

'Time'<'2012-12-23 18:00:00'

'Time'如果您确定反勾号和单引号仍然不起作用,请尝试
这个

UPDATE `Table`SET Status=1
WHERE Name='personname' AND 
Time < STR_TO_DATE('2012-12-23 18:00:00','YYYY-MM-DD HH:MI:SS')
UPDATE`Table`SET Status=1
其中Name='personname'和
时间<截止日期('2012-12-23 18:00:00','YYYY-MM-DD HH:MI:SS')
试试这个:

UPDATE `Table`SET Status=1
WHERE Name='personname' AND 
Time < UNIX_TIMESTAMP(STR_TO_DATE('23-12-2012 18:00:00',' "%d-%m-%Y %h:%i:%s'));
UPDATE`Table`SET Status=1
其中Name='personname'和
时间
这就像一个符咒。当我不知道的时候,MYSQL会把它转换成大写字符串。也许这是一个系统使用的变量。反勾号解决了它!谢谢~你能简单地解释一下你在查询中做了什么更改以及为什么,让每个人都能看到你的推理吗?
UPDATE `Table`SET Status=1
WHERE Name='personname' AND 
Time < STR_TO_DATE('2012-12-23 18:00:00','YYYY-MM-DD HH:MI:SS')
UPDATE `Table`SET Status=1
WHERE Name='personname' AND 
Time < UNIX_TIMESTAMP(STR_TO_DATE('23-12-2012 18:00:00',' "%d-%m-%Y %h:%i:%s'));