-2

我有一个复杂的查询,在这个问题中得到了很好的解释。我没有更改查询中的任何内容或与此系统相关的任何内容,但是我突然开始收到此错误

BIGINT UNSIGNED 值超出 '( _db. ads. impressions_total- (cast(((curdate()) - cast( _db. ads. startas date)) as unsigned) * _db. ads. impressions_perday))' 的范围

我真的很困惑,我猜有些东西缓存不正确,但我能做什么?我真的需要帮助..

4

1 回答 1

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
于 2013-08-31T21:53:57.507 回答