该问题原因网上解释的比较多,大家可以参考,
这里只说sql语句优化的解决方案
出现该问题的语句如下:
select a,b from tb_test group by a,b order by c;
修改方案如下
1.去掉order by或者order by后面的条件必须是group by后面的条件或者之一
2.给select后的参数增加 any_value
处理后的正确语句
select any_value(a),any_value(b) from tb_test group by a,b order by a;
此时你会发现,增加any_value会让你的查询结果的表头有any_value字样,解决方案如下:
select any_value(a) as a,any_value(b) as b from tb_test group by a,b order by a;