为了账号安全,请及时绑定邮箱和手机立即绑定

sql语句的执行顺序是什么,为什么下面这两个sql执行的结果是一样的

sql语句的执行顺序是什么,为什么下面这两个sql执行的结果是一样的

慕运维8079593 2018-09-12 18:18:23
查看完整描述

2 回答

?
不负相思意

TA贡献1777条经验 获得超10个赞

你这两个sql语句只是运行顺序不同
第一个sql语句你嵌套多一层子查询,先把sum(case when right(jym,1) in(2,8) then jyje else 0 end)/100 两个聚合函数算出来,然后在分组having直接过滤。
而第二个sql是在having的时候才去算sum(case when right(jym,1) in(2,8) then jyje else 0 end)/100 两个聚合函数的值。
但是你最后都是用这个条件去过滤的,所以结果是一样的

查看完整回答
反对 回复 2018-09-25
  • 2 回答
  • 0 关注
  • 628 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信