SQL Server和MYSQL中Group By的用法与易错点

最近学习SQL Server遇到了分组的问题,发现SQL Server中的分组和MYSQL中的分组有不一样的地方,借此仔细的翻阅资料深入的学习了下。

就以案例来说明下:

学生成绩表(学好#,课程号,成绩)

在这里插入图片描述
我们开始按学号分组:

select sNo from sc group by sNo

结果为:
在这里插入图片描述
学生成绩以学号为小组的形式开始划分,相同的学号成绩归并成一组,以此我们可以看到,Group By可以将查询结果按某一列或多列的值进行划分

易错点分析:

在SQL Server中,出现在select后面的字段,如果选用分组的形式,要么出现在聚合函数中,要么出现分组函数中。
例如:执行如下语句

      select sNo,cNo from sc group by sNo

会出现报错:(MYSQL则不会出现此情况,因为MYSQL执行的不严谨)

在这里插入图片描述
因为,select之后的字段有cNo课程号,但却不是在聚合函数或Group By子句中,所以会出现报错情况。


正确用法:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值