MySQL真的出乎意料错误。 BIGINT超出范围

时间:2013-08-31 21:35:07

标签: mysql

我有这种复杂的查询,在this question中有很好的解释。我没有更改查询中的任何内容或与此系统相关的任何内容,但我突然开始收到此错误

  

BIGINT UNSIGNED值超出范围   '(_dbadsimpressions_total - (cast(((curdate()) -   施放(_dbadsstart作为日期))作为无符号)*   _dbadsimpressions_perday))'

我真的很困惑,我猜有些东西没有正确缓存,但我该怎么办?我真的需要帮助......

1 个答案:

答案 0 :(得分:1)

这似乎是您的

(_db.ads.impressions_total - (cast(((curdate()) - cast(_db.ads.start as date)) as unsigned) * _db.ads.impressions_perday

获取两个日期之间差异的正确方法是使用datediff()。所以我想知道这是否能解决你的问题:

_db.ads.impressions_total - datediff(curdate(), cast(_db.ads.start as date))*_db.ads.impressions_per_day