sql 语句中:select a ,b,c 然后group by一定要接a,b,c吗?

 我来答
仁昌爱娱乐
高粉答主

2020-05-21 · 专注关心娱乐
仁昌爱娱乐
采纳数:760 获赞数:459814

向TA提问 私信TA
展开全部

sql 语句中:select a ,b,c 然后group by不一定要接a,b,c,如果要按a,b,c分成各个不同的小组就需要。

Group By语句的作用是通过一定的规则将一个数据集划分成若干个小的区域,然后针对若干个小区域进行数据处理。Group By + [分组字段](可以有多个)。在执行了这个操作以后,数据集将根据分组字段的值将一个数据集划分成各个不同的小组。

如果在返回集字段中,这些字段要么就要包含在Group By语句的后面,作为分组的依据;要么就要被包含在聚合函数中。

扩展资料:

在结果集内返回每个可能的组和子组组合的 GROUP BY 汇总行。GROUP BY 汇总行在结果中显示为 NULL,但可用来表示所有值。使用 GROUPING 函数确定结果集内的空值是否是 GROUP BY 汇总值。

结果集内的汇总行数取决于 GROUP BY 子句内包含的列数。GROUP BY 子句中的每个操作数(列)绑定在分组 NULL 下,并且分组适用于所有其它操作数(列)。由于 CUBE 返回每个可能的组和子组组合,因此不论指定分组列时所使用的是什么顺序,行数都相同。



hy1397471
推荐于2018-03-10 · 知道合伙人软件行家
hy1397471
知道合伙人软件行家
采纳数:4714 获赞数:17153
15年数据库维护及数据库应用系统开发经验,从事零售业、服务业及财务管理类系统开发与维护。

向TA提问 私信TA
展开全部

不一定的,select a,b,c from table group by a,b,c,d 也是正确的写法。


SQL的grop by  语法为,

select 选取分组中的列+聚合函数 from  表名称 group by 分组的列

从语法格式来看,是先有分组,再确定检索的列,检索的列只能在参加分组的列中选。


所以问题中的,group by 后的 a,b,c是先确定的。select后的a,b,c才是可以变的。即


以下语句都是正确的:

select a,b,c from table group by a,b,c,d
select a,b from table group by a,b,c
select a,max(a) from table group by a,b,c

以下语句则是错误的:

select a,b,c from table group by a,b
select a,b,c from table group by a
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
JMxiang113
推荐于2016-01-06 · TA获得超过117个赞
知道小有建树答主
回答量:232
采纳率:0%
帮助的人:187万
展开全部
可以不用,如果你select查询字段中你用了函数(比如max、min之类的),就要除函数之外的其余字段
select max(a),b,c from table group by b,c
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1214fdcbb
2010-11-19 · TA获得超过1240个赞
知道小有建树答主
回答量:316
采纳率:0%
帮助的人:377万
展开全部
group by 是为了确定数据用的,比如a列有两个“张三”,你要找不重复的数据的话就要用到dintinct(a),这样就会列出a列不重复的数据,张三只会出现一个,但是如果这时候你还要找其他的数据b,c的时候其实b和c都有两条数据与张三匹配,所以这时候SQL语法是不让你通过的,这时候加上group by b,c就是代表把b,c列的数据分组排列了,这样就能正常显示了,

一般像你上面说的没什么需要的话没必要用到group by,要排序就用order by就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
沈圣恩
2010-11-23
知道答主
回答量:1
采纳率:0%
帮助的人:0
展开全部
group by 有的,select后面必须有,而反过来就不用了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式