我有一个数据库,以毫秒格式保存日期,如 418712400000 。在这个问题中,问题是使用此日期来保存生日(我只能更改后端应用程序,您无法通过数据库结构修改或前端逻辑更改来回答此问题)。数据库中的生日是: 418705200000 ,来自前端应用程序的生日 418712400000 。使用MySQL我将这个时间戳转换为日期,我得到了这个:
08-04-1983
(dd-mm-yyyy)09-04-1983
(dd-mm-yyyy)用户的生日是09-04-1983
。
这个应用程序在阿根廷运行,但总部在另一个国家(哥伦比亚),阿根廷人没有意识到这个错误。
我知道时区影响了这个结果,如何转换日期以匹配结果?
这是MySQL查询:
SELECT
*,
DATE_FORMAT( FROM_UNIXTIME(birthday / 1000), '%d-%m-%Y' ) AS birthday_date,
DATE_FORMAT( FROM_UNIXTIME(418712400000 / 1000), '%d-%m-%Y' ) AS front_end_date
FROM
users
WHERE
userIdentificacion = 30125278
HAVING
birthday_date = front_end_date