当我执行以下代码时,我在MYSQL中收到截断错误的INTEGER值错误。我知道逻辑没有太大意义,而且会改变,而我对错误更乐于接受。我尝试转换整个case语句,但仍然收到相同的错误消息。
这是原始声明
选择
(count(v.SalesDate = v.SalesDate然后v.Surname结尾的情况))x
来自finaljoinalldata v
按日期分组(v.SalesDate)
按日期排序(v.SalesDate);
我也尝试过
选择
(count(CAST(v.SalesDate = v.SalesDate然后v.Surname结尾的情况)AS SIGNED))作为x
来自finaljoinalldata v
按日期分组(v.SalesDate)
按日期排序(v.SalesDate);
任何帮助将不胜感激。
谢谢
最佳答案
您的陈述没有道理。为什么仍然有case
条件?这是多余的-除非您专门检查NULL
值。
这应该工作:
select count(v.Surname) as x
from finaljoinalldata v
group by date(v.SalesDate)
order by date(v.SalesDate);
当我看到
group by
并且group by
列不在select
中时,我很怀疑。