龙空技术网

MySQL第21课~HAVING子句和ROLLUP运算符

小饼干笔记 306

前言:

此刻你们对“oracle班级求和”大概比较注意,各位老铁们都需要了解一些“oracle班级求和”的相关资讯。那么小编在网摘上搜集了一些有关“oracle班级求和””的相关文章,希望各位老铁们能喜欢,我们快快来了解一下吧!

所有内容收录在合集~SQL入门到熟练。欢迎点赞关注我哦~

通过上节课的内容,计算了不同的GMV,客单价之类的数据,如果想要根据数据进行分级的话,就需要写的更多一点。比如只想要总额高于130 的这些数据。

由于group by写在where后面,所以如果你用了where子句,会先进行where,然后分组,这样得出的结果肯定不是想要的,可能是unknown total sales ,所以需要一个新的句子。

HAVING

用于在group by之后分组进行数据的筛选,

也是直接写就好,执行得出结果。

HAVING也是可以添加多个条件的,比如用AND进行连接

HAVING只能用select选中的列,而where不受限制。

引用大神设计的一道题和解法,题目:计算在VA地区,消费大于100的客户,运用2个不同的表格,一个是customer表格,一个是order表格

先拆分,第一步选出VA地区的客户

第二步根据情况合并表格,这里一个表格有customer_id,一个有order_id,还是用join把他们连接起来,然后进行查询

接着进行区分,最后用HAVING进行调整。

WITH ROLLUP

这是一个类似函数自动求和的键。感觉没什么用处

直接会在最末尾计算出总和。同时左边会显示一个null。

这个子句只存在与MYSQL,在SQL server和Oracle里没有这个内容。

不过,都是写SQL的语言,大概也是有类似的键的,可以一键计算出一个数据。

根据表格编写查询,写出一个结果。

标签: #oracle班级求和