mysql语法查询。有和在哪里有什么区别
为什么我们不能在这个程序中使用mysql语法查询。有和在哪里有什么区别,mysql,Mysql,为什么我们不能在这个程序中使用where?为什么只有键是唯一被接受的东西?为了简化:在之前使用的地方使用GROUP BY子句来过滤行具有在分组依据之后使用,可以访问分组依据语句的“结果”。请参阅以下文档: HAVING子句与WHERE子句一样,指定了选择条件。WHERE子句指定select列表中列的条件,但不能引用聚合函数。HAVING子句指定组的条件,通常由groupby子句组成。查询结果仅包括满足条件的组。(如果不存在分组依据,则所有行隐式形成一个聚合组。) 这就是为什么不能使用WHERE子
where
?为什么只有键
是唯一被接受的东西?为了简化:在之前使用的地方使用GROUP BY
子句来过滤行<代码>具有
在分组依据
之后使用,可以访问分组依据
语句的“结果”。请参阅以下文档:
HAVING
子句与WHERE
子句一样,指定了选择条件。WHERE
子句指定select列表中列的条件,但不能引用聚合函数。HAVING
子句指定组的条件,通常由groupby
子句组成。查询结果仅包括满足条件的组。(如果不存在分组依据
,则所有行隐式形成一个聚合组。)
这就是为什么不能使用
WHERE
子句访问sum(salary)表达式中的total
,但可以使用HAVING
子句访问它,该子句在sum(salary)的结果之后应用
进行计算,并应用GROUP BY
子句。其中为SELECT,HAVING为GROUP。这是语法的定义。
create table employee(empid int,empname varchar(20),salary int, month varchar(20));
select empid,sum(salary) as total from employee group by empid **where** total>25000;