查询后,MySql日期时间字段值返回错误



我正在使用Node.js+Express+MySQL构建一个web应用程序。在每个表中都有一个CreatedOn列,它是Datetime。每当从web应用程序创建记录时,我都会在后端执行var createdOn=new Date();以填充此字段。

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

我的SQL查询如下:

从MyTable中选择col1、col2…coln,其中DATE(CreatedOn)=日期(NOW())按时间排序(CreatedOn)DESC

当我调试该查询中的行时,CreatedOn和NOW()值似乎发生了变化。

在写这个问题的时候,它是2016年7月22日,但DATE(NOW())显示为2016-07-20T18:30:00.000Z,它也显示DATE(CreatedOn)为2016-07-20 T18:30:00.000Z。

我需要在数据库中做一些调整吗?还是我读错了这些价值观?谢谢你的帮助。

我有时会遇到一些问题,当我提取记录时会得到不同的结果,但当我使用Date_Format时,它会修复我的问题

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

然后在你的日期字段中全部执行。希望能有所帮助。。

相关内容

  • 没有找到相关文章

最新更新