【发布时间】:2015-06-24 23:53:38
【问题描述】:
当我执行下面的代码时,我在 MYSQL 中收到了截断不正确的 INTEGER 值错误。我知道逻辑没有多大意义,并且会改变,我对错误更加一致。我已尝试强制转换整个 case 语句,但仍然收到相同的错误消息。
这是原文
选择
(计数(当 v.SalesDate = v.SalesDate 然后 v.Surname 结束时的情况))作为 x
来自 finaljoinalldata v
按日期分组(v.SalesDate)
按日期排序(v.SalesDate);
我也试过了
选择
(计数(CAST(当 v.SalesDate = v.SalesDate 然后 v.Surname 结束)AS SIGNED))作为 x
来自 finaljoinalldata v
按日期分组(v.SalesDate)
按日期排序(v.SalesDate);
任何帮助将不胜感激。 谢谢
【问题讨论】:
-
列的数据类型是什么,你能给出一些产生错误的示例数据吗?
-
是的,SalesDate 只是一个日期,而姓氏是一个字符串
-
我删除了 group by 子句它仍然无法工作 select ( count(case when v.SalesDate = v.SalesDate then v.Surname end) ) as x from finaljoinalldata v
标签: mysql casting case typeconverter truncated