我需要你的帮助访问db
我有一张这样的桌子
ID CLASS LESSON
1 7 MATH
2 7 CHEM
3 8 GEOM
4 8 MATH
5 8 CHEM
6 9 MATH
...
在像这样的mysql sql命令中
select CLASS, LESSON
from t_class
group by LESSON
返回
之类的结果ID CLASS LESSON
1 7 MATH
2 7 CHEM
3 8 GEOM
...
但是像这样访问sql命令
select CLASS, LESSON
from t_class
group by LESSON
给出错误
您尝试执行的查询不包含指定表达式“LESSON”作为聚合函数的一部分
那么问题是什么以及如何解决问题。
感谢
答案 0 :(得分:1)
问题是,您需要在聚合函数中指定CLASS
,例如sum
,max
,min
,avg
等。
你可以尝试:
select sum(CLASS), LESSON
from t_class
group by LESSON
您也可以
select CLASS, LESSON
from t_class
group by LESSON, CLASS
但有什么意义呢?
答案 1 :(得分:0)
这会产生错误,因为如果使用聚合函数,则只能获取GROUP BY
- ed的字段以及聚合函数的结果。
不清楚您希望获得CLASS的价值?最不可能的价值?然后使用聚合函数MIN
,如:
select MIN(CLASS), LESSON
from t_class
group by LESSON
答案 2 :(得分:0)
您需要在LESSON或CLASS上使用Aggregate function(根据您的要求),因为您使用的是GROUP BY