黑马程序员技术交流社区

标题: 数据库查询问题 [打印本页]

作者: 王路路    时间: 2012-10-23 01:54
标题: 数据库查询问题
where子句是对原始数据进行过滤,having子句是对分组后的数据进行过滤。
where子句跟having子句中分别能查询具有那些特征的列?

作者: duanhuilin    时间: 2012-10-23 10:01
•WHERE 子句用来筛选 FROM 子句中指定的操作所产生的行。
•HAVING 子句用来从分组的结果中筛选行。
对于可以在分组操作之前或之后应用的搜索条件,在 WHERE 子句中指定它们更有效。这样可以减少必须分组的行数。应当在 HAVING 子句中指定的搜索条件只是那些必须在执行分组操作之后应用的搜索条件。
作者: chens2865    时间: 2012-10-23 10:04
这两个语句有着本质的区别:Where语句用于SQL中有限定条件的地方。比如:
Select * from 表名 where 查询限定条件.
Update,Delete等类似,意思是我要查哪个范围内的数据,要更新哪个范围内的数据和删除哪个范围内的数据;
而having子句用于对分组后的信息进行过滤.用法如下:
select name,age,count(*) from T_Person group by age having count(*)>2.




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2