天天看點

StarRocks must be an aggregate expression or appear in GROUP BY clause

StarRocks在SQL查詢時報錯must be an aggregate expression or appear in GROUP BY clause

這個報錯資訊主要就是select查詢的列沒有使用聚合函數或者沒有包含在GROUP BY中

例如

select c1, c2 from table group by c1;

c2這一列沒有使用聚合函數,也不在group by子句中

解決方案

改寫SQL語句。如改成select c1 from table group by c1; 或者select c1,max(c2) as c2 from table group by c1;

更新starrock版本至2.3及以上。官方在starrock2.3版本開始支援通過設定sql_mode參數來關閉查詢列必須是聚合列的限制(和mysql的設定方式一緻)官方issue:https://github.com/StarRocks/starrocks/issues/5578

親測在starrock2.4版本可以正常關閉;
StarRocks must be an aggregate expression or appear in GROUP BY clause