MySQL使用like运算符匹配记录

MySQL使用like运算符匹配记录,mysql,sql,date-format,Mysql,Sql,Date Format,我的表中有时间戳字段 例如,我的表中有一个值,如下所示: 2013-08-11 16:18:00 现在我想要这样的结果: 2013-08-11 16:18 我不想匹配时间戳中的第二个 我的问题是: UPDATE n2jm0_cronjob_run SET state=0 WHERE crondate LIKE '2013-08-11 16:18:02' (根据评论更新) 我无法直接从查询中删除秒数 UPDATE n2jm0_cronjob_run SET state=0 WHERE cron

我的表中有时间戳字段

例如,我的表中有一个值,如下所示:

2013-08-11 16:18:00
现在我想要这样的结果:

2013-08-11 16:18

我不想匹配时间戳中的第二个

我的问题是:

UPDATE n2jm0_cronjob_run SET state=0 WHERE crondate LIKE '2013-08-11 16:18:02'
(根据评论更新)

我无法直接从查询中删除秒数

UPDATE n2jm0_cronjob_run SET state=0 WHERE crondate LIKE '2013-08-11 16:18%'
如果我理解正确的话,也许是这样


如果我理解正确,可能是这样。

如果您根本无法从日期时间字段中删除秒部分,请尝试以下操作:

UPDATE n2jm0_cronjob_run SET state=0 WHERE DATE_FORMAT(crondate ,'%Y-%m-%d %H:%i')=
DATE_FORMAT('2013-08-11 16:18:00','%Y-%m-%d %H:%i');
DATE\u格式('2013-08-11 16:18:00','%Y-%m-%d%H:%i')
将仅与分钟部分匹配


查看此

如果您根本无法从日期时间字段中删除秒部分,请尝试以下操作:

UPDATE n2jm0_cronjob_run SET state=0 WHERE DATE_FORMAT(crondate ,'%Y-%m-%d %H:%i')=
DATE_FORMAT('2013-08-11 16:18:00','%Y-%m-%d %H:%i');
DATE\u格式('2013-08-11 16:18:00','%Y-%m-%d%H:%i')
将仅与分钟部分匹配


<>看这个

嘿,我不能直接从查询中删除秒。我需要与2013-0811 16:18:02相匹配,但是不需要考虑秒。在你的答案中,你删除了不可能的秒。我想匹配整个timespamp。那么,您最初的查询有什么问题吗?@Manan您所说的
match
到底是什么意思。据我所知,这里给出的解决方案完全符合你的需要。嘿,我不能直接从查询中删除秒。我需要与2013-0811 16:18:02相匹配,但不需要考虑秒。在你的答案中,你删除了不可能的秒。我想匹配整个timespamp。那么,您最初的查询有什么问题吗?@Manan您所说的
match
到底是什么意思。据我所知,此处给出的解决方案完全符合您的需要。的可能重复项请勿将
与日期时间值一起使用。只需进行比较(使用日期时间对象而不是字符串)。我不是一个php人士,但本质上:
其中crondate>='2013-08-11 16:18:00'和crondate<'2013-08-11 16:19:00'
的可能副本不使用类似于的日期时间值。只需进行比较(使用日期时间对象而不是字符串)。我不是php人士,但本质上是:
WHERE crondate>='2013-08-11 16:18:00'和crondate<'2013-08-11 16:19:00'