MySQL其他(执行顺序、where和having区别)

SQL和MySQL的区别:

SQL是一种语言就像Python,MySQL是一种数据软件叫做数据库就像Pytorch。数据软件还有其他的例如:oracle等,都是通过SQL语句进行查询的,数据库之间有细微差异(以后用到再说)。

MySQL语句的书写顺序为:

select (输出)   from (获取数据)  where(过滤)  group by (分组) having(过滤) order by (排序)   limit(限定)

MySQL语句的执行顺序为:

先from,在执行where,group by ,select, having,order by ,limit

使用group by时的聚类函数;

count(*) 和 count(1)  是一样的
count(column) 不统计column中的为NULL的行数目
count(distinct column) 不统计column中重复行数目
sum()
max()
min()
avg()
group_concat() 字符串的结合

where和having的区别:

1. where是一个约束声明,使用Where约束来自数据库的数据,Where是在结果返回之前起作用的,Where中不能使用聚合函数。
2. Having是一个过滤声明,是在查询返回结果集以后对查询结果进行的过滤操作,在Having中可以使用聚合函数。在查询过程中聚合语句(sum,min,max,avg,count)要比having子句优先执行。而where子句在查询过程中执行优先级高于聚合语句。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值