非聚合函数的列必须出现在group by 中:
SELECT DutyName,PhaseName,VersionID  FROM T_TaskEffectSource GROUP BY DutyName,PhaseName,VersionID

解决方案 »

  1.   

    SELECT DutyName,PhaseName,VersionID  
    FROM T_TaskEffectSource 
    GROUP BY DutyName,PhaseName,VersionID  --少写了一个字段
      

  2.   

    SELECT DutyName,PhaseName,min(VersionID) --或者将它放在聚合函数中
    FROM T_TaskEffectSource 
    GROUP BY DutyName,PhaseName
      

  3.   

    --这是SQL的规定,如果使用了group by 
    那么在select中出现的字段,要么放在聚合函数中,要么放在group by中
      

  4.   

    如果字段沒在聚合函数中,再一定要在group by 中
    SELECT DutyName,PhaseName,VersionID  
    FROM T_TaskEffectSource 
    GROUP BY DutyName,PhaseName,VersionID  
    或SELECT DutyName,PhaseName,MAX(VersionID) AS VersionID
    FROM T_TaskEffectSource 
    GROUP BY DutyName,PhaseName

    SELECT DutyName,PhaseName,Min(VersionID) AS VersionID  --可根據需求是其他聚合函数
    FROM T_TaskEffectSource 
    GROUP BY DutyName,PhaseName
      

  5.   


    SELECT DutyName,PhaseName,VersionID  FROM T_TaskEffectSource 
    GROUP BY DutyName,PhaseName,VersionID