我正在写一个查询,我需要从基于AVG()聚合函数,条件选择语句结果,使用平均聚合函数内如果第
,但在MySQL它给误差错误代码: 1111, 无效使用组功能
select
if(avg(FLD_TKTS) > 1 and avg(FLD_TKTS) <= 2 , '1-2' , 0) as fld_avg_1_2,
if(avg(FLD_TKTS) > 3 and avg(FLD_TKTS) <= 4 , '3-4' , 0) as fld_avg_3_4
from tbl
group by region;
是有其他的方法来做到这一点?
您可以显示表信息?查询对我来说很好。 – KaeL
查询看起来不错,必须用表格。 – sashkello
不确定的MySQL,但在oracle或sql server中我们使用Case语句(因为没有if)这样的一些事情Select(case when avg(FLD_TKTS)> 1 then avg (FLD_TKTS)else 0 end)作为来自tbl的fld_avg按区域分组; –