使用Group By子句的时候,一定要记住下面的一些规则

使用Group By子句的时候,一定要记住下面的一些规则:
(1)不能Group By非标量基元类型的列,如不能Group By text,image或bit类型的列
(2)Select指定的每一列都应该出现在Group By子句中,除非对这一列使用了聚合函数;
(3)不能Group By在表中不存在的列;
(4)进行分组前可以使用Where子句消除不满足条件的行;
(5)使用Group By子句返回的组没有特定的顺序,可以使用Order By子句指定次序。

时间: 2024-12-20 08:09:06

使用Group By子句的时候,一定要记住下面的一些规则的相关文章

在选择列表中无效,因为该列既不包含在聚合函数中,也不包含在 GROUP BY 子句

在选择列表中无效,因为该列既不包含在聚合函数中,也不包含在 GROUP BY 子句 突然看到这个问题,脑袋一蒙,不知道啥意思,后来想想,试图把select里的选项放到后面,问题自然解决! 下面这个就是报“orderdate select shipcountry,sum(shipvia) as totalvia,OrderDate as thefirsttime from orders group by shipcountry,相应的从网上看到其他的朋友也有这样的问题 比如要显示authors表中

选择列表中的列……无效,因为该列没有包含在聚合函数或 GROUP BY 子句中

今天用SQL Server尝试实现一个SQL语句的时候,报了如标题所示的错误,通过在百度里面搜索,并亲自动手实现,终于发现问题所在,现在把它记录下来. 语句如下: select [OrderID],[ProductID], min(UnitPrice) as MinUnitPrice into NewDetails FROM [Northwind].[dbo].[Order Details] Group by [OrderID] 执行该语句之后,SQL Server报错如下: "消息 8120,

T-Sql语法:GROUP BY子句GROUPING SETS、CUBE、ROLLUP

#cnblogs_post_body h1 { background-color: #A5A5A5; color: white; padding: 5px } GROUP BY子句 1.ROLLUP() 生成某一维度的分组的小计行,还生成一个总计行. 示例表: select * from student 我们来看一下具体示例: select sex,sclass,sum(score) from student group by rollup(sex,sclass) 如图中所示,ROLLUP()为

使用GROUP BY子句进行分组操作

本文通过实例介绍GROUP BY子句的使用方法. 1 准备测试数据 新建数据表tb_Student并插入下图所示的测试数据. 图1 数据表tb_Student的数据 2 使用GROUP BY子句进行分组 问题1  要求 按照班级ID对学生进行分组,并查询出每个班级的学生数,学生的最大年龄,最小年龄,年龄总和及年龄平均等信息. 解答 SELECT s.class_id AS 班级,COUNT(*) AS 人数,MAX(s.student_age) AS 年龄最大,MIN(s.student_age

选择列表中的列无效,因为该列没有包含在聚合函数或 GROUP BY 子句中

T-SQL核心语句形式: SELECT     --指定要选择的列或行及其限定  [INTO ]      --INTO子句,指定结果存入新表 FROM      --FROM子句,指定表或视图 [WHERE ]                 --WHERE子句,指定查询条件 [GROUP BY ]           --GROUP BY子句,指定分组表达式 [HAVING ]                --HAVING子句,指定分组统计条件 [ORDER BY [ASC|DESC]] 

6.InfluxDB-InfluxQL基础语法教程--GROUP BY子句

本文翻译自官网,官网地址:(https://docs.influxdata.com/influxdb/v1.7/query_language/data_exploration/) GROUP BY子句通过用户自己制定的tags set或time区间,来将查询结果进行分组. 一.GROUP BY tags GROUP BY 通过用户指定的tag set,来对查询结果进行分组. 语法: SELECT_clause FROM_clause [WHERE_clause] GROUP BY [* | <t

oracle数据库GROUP BY 子句

1.GROUP BY子句 在SELECT 列表中所有未包含在组函数中的列都应该包含在GROUP BY 子句中. 如下: SELECT deptno,AVG(sal) from emp GROUP BY deptno;(deptno为没有包含在组函数的列) 以下查询是错误的: SELECT a,b,c,AVG(sal) from emp GROUP BY a,b;(c没有写在group by 后面) =================================================

JPA标准GROUP BY子句

GROUP BY子句用于从一个或多个表中收集数据并将它们排列在一个分组中. 在Criteria API中,AbstractQuery接口的groupBy()方法用于过滤记录并对它们进行分组. 标准GROUP BY示例 在这里,我们将在student表上执行多个GROUP BY操作.假设该表包含以下记录 - DROP TABLE IF EXISTS `student`; CREATE TABLE `student` ( `S_ID` int(11) NOT NULL, `S_NAME` varch

SQL Group By 子句详解

合计函数 (比如 SUM) 常常需要添加 GROUP BY 语句. GROUP BY 语句 GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组. SQL GROUP BY 语法 SELECT column_name, aggregate_function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name SQL GROUP BY 实例 我们拥有下面这个 "Or