我在一个表中有数据,其中一列是datetime。
select time from tbdt where unix_timestamp(time) > unix_timestamp(now()) order by time asc limit 1
现在nodejs在console.log()中打印错误的时间,
实际日期时间为 2018-12-16 15:00:00
在db表中。。但是mysql回来了 2018-12-16T09:30:00.000Z
差5小时30分钟,我的时区是+5:30(ist)
我不知道到底哪里出了问题,不管是在mysql还是在node js中
2条答案
按热度按时间ssm49v7z1#
需要使用
convert_tz
mysql中的函数。签名如下:
https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html#function_convert-tz公司
wn9m85ua2#
您应该检查mysql运行的服务器时间,因为它将从托管mysql的服务器上选择时间。
这是由mysql完成的,而不是由nodejs完成的,您可以通过控制台或sqldeveloper工具将上述查询直接运行到数据库中来验证这一点。