楼上兄弟的解释是一个方面,其实WHERE 和 HAVING的最大区别是它们参与过滤的次序不同(只有在分组的情况下才使用HAVING),举个例子: 列出税额大于3000姓李的用户 select name,sum(tax) from taxdbt where name like '李%' group by name having sum(tax)>3000 首先按姓名统计所有姓李的税额,再过滤出大于3000的记录。
select count(*) as sl,s2 from tablename where a1>1000 group by s1 having count(*)>1s3,a1为库中的字段
楼上兄弟的解释是一个方面,其实WHERE 和 HAVING的最大区别是它们参与过滤的次序不同(只有在分组的情况下才使用HAVING),举个例子: 列出税额大于3000姓李的用户 select name,sum(tax) from taxdbt where name like '李%' group by name having sum(tax)>3000 首先按姓名统计所有姓李的税额,再过滤出大于3000的记录。lfny你是不是做税务方面软件的
一般来说先用WHERE,后用HAVING
对查询的结果再过滤
列出税额大于3000姓李的用户
select name,sum(tax) from taxdbt where name like '李%' group by name having sum(tax)>3000
首先按姓名统计所有姓李的税额,再过滤出大于3000的记录。
group by s1 having count(*)>1s3,a1为库中的字段
如果用group by分组的话,可以把having当作分组后的过滤。
列出税额大于3000姓李的用户
select name,sum(tax) from taxdbt where name like '李%' group by name having sum(tax)>3000
首先按姓名统计所有姓李的税额,再过滤出大于3000的记录。lfny你是不是做税务方面软件的