微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 从mysql数据库获取普通日期和时间戳之间的值

我有一个标准的mysql时间戳,格式为2011-11-14 20:06:24.只要将新记录添加到名为lead的表中,就会添加此时间戳.

我有两个输入字段供用户以日期和日期输入dd / mm / yyyy格式.一旦用户输入两个日期并按下按钮,值将被传递到其他字段以从表格中获取在时间范围之间插入的记录.

我尝试了以下查询,但它不起作用

SELECT  DATE_FORMAT(added_on, '%d/%m/%Y') as date
FROM    lead
WHERE   added_on BETWEEN "10/11/2011" AND "14/11/2011"

解决方法:

使用日期,日期时间和时间戳的标准格式:’2011-11-14’而不是’14 / 11/2011′.

使用单引号,而不是双引号.

如果added_on是时间戳,则不应使用BETWEEN,否则您将丢失最后一天的几乎所有记录,因为’2011-11-14’将转换为’2011-11-14 00:00:00′.请改用:

WHERE   added_on >= '2011-11-10'
  AND   added_on <  '2011-11-15'              --- note the "< the next day"

要么

WHERE   added_on >=  '2011-11-10'
  AND   added_on <  ('2011-11-14' + INTERVAL 1 DAY)

您应该仔细阅读MySQL docs: TIMESTAMP properties页面,了解MysqLMySQL docs: Timezone support中如何处理(并自动插入,更新)时间戳.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐