关于这个的sql的几点疑问

关于这个的sql的几点疑问

老师,这边子查询中的KEY=‘KEY001'时会被打散成50份,然后去计算出现的次数

这边计算的是KEY001(RANDOM)... 以及KEY002....到KEY0004的次数是吗?

类似输出是这样的

a.key      a.Cnt

KEY001ABC   4

KEY001CBD   5

...

KEY002      2

KEY003      3

...


然后外面在进行全局聚合以后

输出是什么样的呢?

我这样想感觉还是和子查询里面的一样的输出,那全局聚合指的是什么呢?


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
徐老师 2022-06-17 17:19:31

这个SQL中内层的SQL语句产生的局部聚合的结果是类似这样的:

key001这个key会产生50条局部聚合的结果,其余的key,每个key产生一条数据

key001   2910
....(中间省略了48条key001的数据)
key001   2781

key002   189191
key003   8918289
.....



外层SQL会对前面产生的中间结果数据进行最终聚合

最终每个key对应一条数据。

key001    18289282
key002    189191
key003    8918289
.....


  • 提问者 CDWei #1

    哦哦原来如此,打散之后是不会改变key0001的命名的,我还以为会加上随机值形成新的字符串

    2022-06-17 17:27:35
  • 徐老师 回复 提问者 CDWei #2

    这个SQL没有改变原始数据,只是在group by 后面额外增加了一个分组字段。

    2022-06-17 17:29:03
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师