MySql datetime字段值查询后返回错误

标签 mysql date datetime

我正在使用 Node.js + Express + MySQL 构建一个 Web 应用程序。每个表中都有一个 CreatedOn 列,即日期时间。每当从网络应用程序创建记录时,我都会在后端执行 varcreatedOn = new Date();填充此字段。

当用户打开记​​录列表页面时,我想默认向他们显示当天(今天)创建的记录。但是,我仍然可以看到昨天创建的记录(仅昨天而不是之前)。在我的数据库中,当我通过 PhpMyAdmin 检查时,日期时间值保存为 2016-07-21 18:01:22 。

我的 SQL 查询如下所示:

select col1, col2...coln from MyTable where DATE(CreatedOn) = DATE(NOW()) order by TIME(CreatedOn) DESC

当我调试此查询中的行时,CreatedOn 和 NOW() 值似乎已更改。

在撰写此问题时,时间是 2016 年 7 月 22 日,但 DATE(NOW()) 显示它为 2016-07-20T18:30:00.000Z 并且它显示 DATE(CreatedOn) 为 2016-07-20T18 :30:00.000Z 也是如此。

我需要在数据库中进行一些调整吗?或者我读这些值错了? 谢谢您的帮助。

最佳答案

有时候,当我取出记录时,我会遇到一些问题,会给我不同的结果,但当我使用 Date_Format 时,它会解决我的问题

Date_Format(date_field,"%Y-%m-%d");

然后完成所有日期字段。 希望它有帮助..

关于MySql datetime字段值查询后返回错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38518182/

相关文章:

MySQL 总数量

mysql - 关于MYSQL连接和计数的查询

mysql - 优化SQL : Customers that haven't ordered for x days

php - 检查没有前导零的日期表达式 ("d-m") 是否是今天

javascript - HTML 日期 : Get Correct date in yyyy - mm - dd

python - 根据时间间隔连接 Pandas 数据帧并计算平均值

mysql - MariaDB 使用通配符主机授予权限不起作用

java - 在java中比较两个字符串与Date

python - 无法在Python中将字符串转换为日期时间

php - PHP 中的对象 : More or Less is better?