客户在SQL的分块

2026年8月22日1 次浏览来源:Dev.to阅读原文

由数据分析师Michael Nocito撰写 .

到本页末,您可以将交易表转换成命名的客户组,计算和汇总每个组,将两个分块切入矩阵,选择取取的截取和截取数据,并证明每个客户都降落在一个组.

大约25分钟,下面每个查询和结果都运行。

这是今天要做的, 关于你已经拥有的分割。

每段盘点顾客并加分.

如果总数小于你的客户数, 一些行掉进条件 并坐在一个空地段 没有人看。

如果任何部分的客户为零,则条件顺序错误.

短版本:将每个客户合并到一行,增加一个给组取名的表达式,然后用这个名称来组.

标签第一,第二组,是这个想法,所以它得到图片.

原件上有一个图 以言语: 左至右相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相 第一个面板由12个水平条组成的一列,长度不一,为12个客户,每个客户花费多少,没有特定的分组.

第二块板以相同的顺序重复了相同的十二个条,但现在每个条都有一个小有色的正方形附着在它的左手端:三个条带一个暗的正方形,四个条带一个中调正方形,五个条带一个苍白正方形,所以每个条都有正方形,没有一条条没有.

第三个板块只有三个堆叠的块块,三个荫影各一个,大小与有多少条带荫影成正比,并持有图3、图4和图5。

图片显示,第三面板中的分组完全由第二面板所添加的正方形所产生,而十二条仍然全部被记.

本页的每个结果都是真实的. 12个客户,19个购买,2 430个支出,装入DuckDB并询问。 12个小到可以亲手检查每个片段,这是知道分块查询的唯一方法,是在它遇到真正的客户基础之前就已经知道了.

1.

每一客户第一分公司到一行是针对客户的,交易表是针对购买的,所以第一行总是一个汇总.

在谷物正确之前,标签是不会起作用的。 12行,总和为2,430个,这是整个购买表.

这三个栏目是客户分割的经典成分:最近多少次,多少次.

你不必使用所有三个, 并且你必须计算它们之前,你可以带它们。

这样做是一个命名步骤,而不是筑巢,所以可以自行检查客户的计数;对此的论据是在对CTE的潜取中,这里很重要,因为下游的一切都由该计数所分出.

2.

CASE:标签只是一栏从上到下读出一个条件列表,并返回第一个条件所附加的值为真.

出来的是一个普通的文本栏.

这就是整个想法,这是值得内化的东西: 片段不是一个特殊的对象, 它是一个每行计算出来的值, 这意味着它可以被选择,过滤,加入,计算, 并且,最有用的是,被分组。

表达本身的力学,包括简单表征和被搜索表征的区别,都在CASE指南中.

由于它是计算而不是存储的,定义存在于查询中.

这既方便,又方便,一旦三份报告都载有各自略有不同的副本,这就是第八节的核对和关于实现该部分的说明的目的。

3.

按标签分组 将所选列表并按其分组,分块完成.

三,四和五个客户,增加12个.

他们的支出增加了2 430美元。

逐个检查:高为C2为470分,C1为350分,C7为300分,为1120分.

而现在的发现,这是最重要的 做到这一点: 三客户 在十二,四分之一,acc

分享