首页 > 解决方案 > 为 MySQL to_days 获得大的负数

问题描述

以下 TO_DAYS 语句返回一个非常大的负值,例如 -3.9084128648E11

SELECT...,
    s.enroll_start as enrollStart,
    TO_DAYS(s.enroll_start) as enrollStartToDays 
FROM...
WHERE...

s。enroll_start 是 MySQL DATE 数据类型。结果看起来像(注意

enrollStart:2019-02-01 12:00 AM,
enrollStartDays:-3.9084128648E11

当尝试在enrollStart 和curdate() 之间执行DATEDIFF 时,我看到了类似的结果。'21474836521' in column '39' is outside valid range for the datatype INTEGER

特别奇怪的是,当通过 Navicat 或 SQL Explorer 运行查询时,这个问题永远不会发生。它只发生在 webapps 中,即使那样也不会始终如一地发生。

标签: javamysqljdbchikaricp

解决方案


推荐阅读