ACCESS 中的 GROUP BY CLAUSE 问题

发布于 2024-10-30 03:25:45 字数 653 浏览 1 评论 0原文


我需要你帮助访问数据库

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”作为聚合函数的一部分
那么问题是什么以及如何解决问题..
谢谢

i need your help in access db
i have a table like this

ID     CLASS    LESSON
1      7        MATH
2      7        CHEM
3      8        GEOM
4      8        MATH
5      8        CHEM
6      9        MATH
...

in mysql sql command like this

select CLASS, LESSON
from t_class
group by LESSON

returns result like

ID     CLASS     LESSON
1      7         MATH
2      7         CHEM
3      8         GEOM
...

but access sql command like this

select CLASS, LESSON
from t_class
group by LESSON

gives error
You tried to execute a query that does not include the specified expression 'LESSON' as part of an aggregate function
So what is the problem and how to solve the problem..
Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

好倦 2024-11-06 03:25:45

问题是,您需要在聚合函数中指定 CLASS,例如 summaxminavg 或类似的。

你可以尝试:

select sum(CLASS), LESSON
from t_class
group by LESSON

你也可以这样做

select CLASS, LESSON
from t_class
group by LESSON, CLASS

,但这有什么意义呢?

The problem is, that you need to specify CLASS in an aggregate function, like sum, max, min, avg or the likes.

You could try:

select sum(CLASS), LESSON
from t_class
group by LESSON

You could also do

select CLASS, LESSON
from t_class
group by LESSON, CLASS

but what's the point there?

神魇的王 2024-11-06 03:25:45

这会产生错误,因为如果您使用聚合函数,您只能获取经过 GROUP BY 编辑的字段以及聚合函数的结果。

它还不清楚您想要获得什么 CLASS 值?最小的可能值?然后使用聚合函数MIN,例如:

select MIN(CLASS), LESSON
from t_class
group by LESSON

This gives an error because if you use aggregate functions you can only get fields you GROUP BY-ed for, and the result of aggregate functions.

It also not clear what value of CLASS you want to get? The least possible value? Then use an aggregate function MIN like:

select MIN(CLASS), LESSON
from t_class
group by LESSON
痴情换悲伤 2024-11-06 03:25:45

您需要在 LESSON 或 CLASS 上使用聚合函数(根据您的要求),因为您正在使用 GROUP BY

you need to use Aggregate function on LESSON or CLASS (as per your requirement), since you're using GROUP BY

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文