原文:SQL中WHERE子句中为什么不能使用聚合函数?

我们先来看一下这个代码: 这样子会报错: 为什么呢 我们先来看一下这句查询中的执行顺序:FROM gt WHERE gt GROUP BY gt SELECT 首先我们知道像SUM AVG MAX 等等的聚合函数,是对结果进行筛选的,在FROM之后,我们只得到product这张表,如果对这张表进行聚合筛选后,那么接下来的GROUP BY该怎么办呢 GROUP BY是对表进行分组的,但是你都已经WH ...

2020-08-24 15:29 0 1123 推荐指数:

查看详情

where能使用聚合函数

by; 聚合函数针对结果集,where并不是在结果集后运行。 having针对结果集,把聚合函数放在ha ...

Thu Oct 10 07:35:00 CST 2019 0 410
SQL句中的Having子句where子句

一。介绍     聚合函数如SUM, COUNT, MAX, AVG等。这些函数和其它函数的根本区别就是它们一般作用在多条记录上。而通过使用GROUP BY 子句,可以让SUM 和 COUNT 这些函数对属于一组的数据起作用。当你指定 GROUP BY region 时,只有属于同一个 ...

Wed Jul 09 04:16:00 CST 2014 0 8481
Select 子句后的别名,在where条件能使用

SELECT * FROM student WHERE (条件) 执行顺序,先执行FROM 子句,然后执行WHERE 子句,最后执行SELECT 所以Select 子句后的别名,在where条件能使用 SELECT 控制显示的列, WHERE控制显示的行 模糊查询: "_"表示任意 ...

Sat Oct 14 05:49:00 CST 2017 0 1804
postgreSQL使用sql归一化数据表的某列,以及出现“字段 ‘xxx’ 必须出现在 GROUP BY 子句中或者在聚合函数”错误的可能原因之一

前言: 归一化(区别于标准化)一般是指,把数据变换到(0,1)之间的小数。主要是为了方便数据处理,或者把有量纲表达式变成无量纲表达式,便于不同单位或量级的指标能够进行比较和加权。 不过还是有很多人使用时将归一化(normalization)和标准化(standardization)两个 ...

Tue Jun 16 19:33:00 CST 2020 0 1538
sqlwhere子句

sql语句在很多场景下,需要使用where子句sql操作进行筛选,提取出表数据的子集 比如在下面这张部门表为例 我们筛选部门编号为d002时的部门名称和部门编号那么语句为: select dept_no,dept_name from departments where dept_no ...

Mon Nov 01 00:21:00 CST 2021 0 126
在oraclewhere 子句和having子句中的区别

1.where 不能放在GROUP BY 后面 2.HAVING 是跟GROUP BY 连在一起用的,放在GROUP BY 后面,此时的作用相当于WHERE 3.WHERE 后面的条件不能有聚集函数,比如SUM(),AVG()等,而HAVING 可以 Where和Having都是对查询 ...

Thu May 24 01:01:00 CST 2012 4 60015
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM