在SQL查询中GROUP BY

这篇文章主要介绍在SQL查询中GROUP BY,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

SQL查询中GROUP BY的含义是什么?

SQL查询中GROUP BY的含义是根据指定的规则对数据进行分组,其作用是将查询结果按某一列或多列的值进行分组,值相等的为一组,GROUP BY语句一般是和聚合函数进行配合使用。

Group By 和 Order By

select 类别, sum(数量) AS 数量之和 from A group by 类别 order by sum(数量) desc

在Access中不可以使用“order by 数量之和 desc”,但在sql Server中则可以。

Group By中Select指定的字段限制

select 类别, sum(数量) as 数量之和, 摘要 from A group by 类别 order by 类别 desc

执行后会提示错误,如下图。这就是需要注意的一点,在select指定的字段要么就要包含在Group By语句的后面,作为分组的依据;要么就要被包含在聚合函数中。

Group By All

select 类别, 摘要, sum(数量) as 数量之和 from A group by all 类别, 摘要

中则可以指定“摘要”字段,其原因在于“多列分组”中包含了“摘要字段”,其执行结果如下表

“多列分组”实际上就是就是按照多列(类别+摘要)合并后的值进行分组,示例4中可以看到“a, a2001, 13”为“a, a2001, 11”和“a, a2001, 2”两条记录的合并。

sql Server中虽然支持“group by all”,但Microsoft sql Server 的未来版本中将删除 GROUP BY ALL,避免在新的开发工作中使用 GROUP BY ALL。Access中是不支持“Group By All”的,但Access中同样支持多列分组,上述sql Server中的sql在Access可以写成

select 类别, 摘要, sum(数量) AS 数量之和 from A group by 类别, 摘要

以上是“在SQL查询中GROUP BY”这篇文章的所有内容,感谢各位的阅读!希望分享内容对大家有帮助,更多相关知识,欢迎关注编程之家行业资讯频道!

相关文章

这篇文章主要介绍“hive和mysql的区别是什么”,在日常操作中...
这篇“MySQL数据库如何改名”文章的知识点大部分人都不太理解...
这篇文章主要介绍“mysql版本查询命令是什么”的相关知识,小...
本篇内容介绍了“mysql怎么修改字段的内容”的有关知识,在实...
这篇文章主要讲解了“mysql怎么删除unique约束”,文中的讲解...
今天小编给大家分享一下mysql怎么查询不为空的字段的相关知识...