下边sql,执行没有问题,但是因为要查询数据操作需要主键,加上主键就存在问题;
SELECT a.`year`, a.`month`,  sum(a.expend_money) aa FROM budget_expend a WHERE  a.`year` = 2020 GROUP BY  a.`month`;

mysql5.7以上 1055问题解决

 错误一:

分组没有成功,把month为2的月份都查出来了;

SELECT a.id,a.`year`, a.`month`, sum(a.expend_money) aa FROM budget_expend a WHERE a.`year` = 2020 GROUP BY a.`month`,a.id;
 

mysql5.7以上 1055问题解决

错误二:

此方法报错1055

SELECT a.id,a.`year`, a.`month`, sum(a.expend_money) aa FROM budget_expend a WHERE a.`year` = 2020 GROUP BY a.`month`;

mysql5.7以上 1055问题解决

 解决方式:

使用 any_value() 函数解决;

SELECT any_value (a.id), a.`year`, a.`month`, sum(a.expend_money) aa FROM budget_expend a WHERE a.`year` = 2020 GROUP BY    a.`month`;

mysql5.7以上 1055问题解决

相关文章: