一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

什么是pergroups呢,它的作用是什么?

微云疏影 ? 來源:yzsDBA ? 作者:yzsDBA ? 2022-08-11 15:43 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

學(xué)習(xí)PG聚合操作機(jī)制時(shí),看到ExecInitAgg中初始化時(shí)有對AggState中有pergroups等進(jìn)行初始化[AggState的解釋見上一篇:GreenPlum7聚合操作結(jié)構(gòu)體之間關(guān)系

那么什么是pergroups呢,它的作用是什么?

ExecInitAgg中:可以看到組數(shù)等于組集合數(shù)(若沒hash的話),每個(gè)分組中有numaggs個(gè)聚集

pYYBAGL0szKAPzviAAEYXP45KsU570.jpg

這里就需要理解什么是grouping sets。

PostgreSQL9.5版本引入了group by的分組集合功能,提供了GROUPING SETS,CUBE,ROLLUP參數(shù)。這些新的標(biāo)準(zhǔn)SQL選項(xiàng)可以讓用戶在一次查詢中生成多個(gè)不同級別或者多維度的報(bào)表,而不是像以前一樣需要幾次查詢。

postgres=# create table t1(id1 int,name varchar(20),class int,score int);

CREATE TABLE

postgres=# select * from t1; id1 | name | class | score

-----+----------+-------+-------

1 | math | 1 | 50

2 | math | 2 | 90

3 | math | 1 | 70

5 | chinese | 1 | 50

6 | chinese | 2 | 60

4 | chinese | 2 | 60

7 | physical | 1 | 90

8 | physical | 2 | 80

(8 行記錄)

首先看下普通的group by:根據(jù)name和class字段求和:

pYYBAGL0szKAS2wLAAC1lhYw0rA340.jpg

可以看到到僅一個(gè)聚合分類。那么再看下GROUPING SETS語法:

poYBAGL0szKADVsXAACSPpulY1c356.jpg

有3種聚合分類:1)針對name進(jìn)行分組然后求sum值;2)針對class進(jìn)行分組,然后求sum值;3)grouping sets種的空,表示所有行都聚合到一個(gè)分組中。

需要注意,grouping sets的集合中,一個(gè)括號一個(gè)分組,如下(name,class)為一個(gè)分組。該語句等價(jià)于普通的group by。

pYYBAGL0szOAMJ0-AACcjrblsLE395.jpg

總結(jié):grouping sets中有一個(gè)集合,則有一個(gè)聚合;若有2個(gè)集合,則2個(gè)聚合。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • SQL
    SQL
    +關(guān)注

    關(guān)注

    1

    文章

    783

    瀏覽量

    44991
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    進(jìn)行濾波器的諧波測試,作用是什么

    進(jìn)行濾波器的諧波測試,作用是什么,沒理解?測三個(gè)頻點(diǎn)來看超過規(guī)定值沒
    發(fā)表于 06-23 19:19

    關(guān)于ads1298的右腿驅(qū)動(dòng)部分,有一個(gè)右腿驅(qū)動(dòng)參考電壓,請問這個(gè)參考電壓的作用是什么啊,是由什么決定的?

    關(guān)于ads1298的右腿驅(qū)動(dòng)部分,有一個(gè)右腿驅(qū)動(dòng)參考電壓,可以外接,或內(nèi)部產(chǎn)生,請問這個(gè)參考電壓的作用是什么啊,是由什么決定的
    發(fā)表于 02-13 06:30

    ADS4125數(shù)據(jù)輸出口接了緩存器和排阻,這排阻的作用是什么?

    什么都沒變,什么原因引起這么大差異?問題2:在ADS4125數(shù)據(jù)輸出口接了緩存器和排阻,這排阻的作用是什么,是做匹配還是當(dāng)上拉電阻用
    發(fā)表于 02-07 08:45

    ADS1298配置寄存器3:RLD_LOFF_SENS位的控制作用是什么

    關(guān)于配置寄存器3:RLD_LOFF_SENS位 的控制作用是什么?誰能告訴我,O(∩_∩)O謝謝!
    發(fā)表于 02-06 07:31

    ads1174中的DIN腳的功能說是Daisy-chain,作用是什么?

    我看的ads1174中的DIN腳的功能說是Daisy-chain,也就是雛菊鏈的意思,請問他的作用是什么?求解答
    發(fā)表于 02-05 06:23

    AFE4400血氧模塊的AFE_PDNZ管腳是輸入口還是輸出口,作用是什么樣的?

    請教一下AFE4400血氧模塊的AFE_PDNZ管腳是輸入口還是輸出口,作用是什么樣的?是不是寄存器配置好以后,期間會自動(dòng)工作?
    發(fā)表于 12-17 07:52

    ADS1291在心電測量中這四個(gè)10M歐姆電阻的作用是什么?

    圖中R3、R4以及R5、R6的作用是什么,在我看來是將IN1P/N的電壓拉升到(AVDD+AVSS)/2,那么這么做是為什么?請指教。
    發(fā)表于 11-18 06:54

    D類功放喇叭輸出端會接RC串聯(lián)在喇叭上面,作用是什么?

    D類功放喇叭輸出端會接RC串聯(lián)在喇叭上面,這個(gè)作用是什么?還看到有的是接CR,如下面這個(gè)圖C201和R200,這個(gè)有什么區(qū)別嗎,還有喇叭之間會接電容,這個(gè)作用又是什么,如下面的C33 ?還想請教各位,謝謝!
    發(fā)表于 11-01 07:25

    電機(jī)驅(qū)動(dòng)器是什么?的主要作用是什么?

    、空調(diào)系統(tǒng)等。 一、電機(jī)驅(qū)動(dòng)器的基本概念 電機(jī)驅(qū)動(dòng)器,又稱為電機(jī)控制器,是一種將電能轉(zhuǎn)換為機(jī)械能的電子設(shè)備。通過接收外部控制信號,對電機(jī)的轉(zhuǎn)速、轉(zhuǎn)矩和方向進(jìn)行精確控制。電機(jī)驅(qū)動(dòng)器的主要作用是提高電機(jī)的運(yùn)行效率
    的頭像 發(fā)表于 10-22 09:29 ?3993次閱讀

    rtthread是搶占式的rtos,那么線程的timeout參數(shù)具體的作用是什么

    查閱相關(guān)說明,rtthread是搶占式的rtos,那么線程的timeout參數(shù)具體的作用是什么, 假如線程A,B的優(yōu)先級分別是1和2,timeout是10ms。當(dāng)線程B 在運(yùn)行中,還未到timeout,此刻掛起的線程A被觸發(fā),是直接搶占,打斷線程B的運(yùn)行還是要等超時(shí)再運(yùn)
    發(fā)表于 09-27 08:39

    大帶寬服務(wù)器的作用是什么

    大帶寬服務(wù)器在現(xiàn)代互聯(lián)網(wǎng)應(yīng)用中扮演著至關(guān)重要的角色,其作用主要體現(xiàn)在以下幾個(gè)方面,rak小編為您整理發(fā)布大帶寬服務(wù)器的作用是什么。
    的頭像 發(fā)表于 09-26 10:01 ?374次閱讀

    請問跟隨器的具體作用是什么?

    請問跟隨器的具體作用是什么,我知道電壓放大倍數(shù)為零,那么他能改善什么性能?請專家解答
    發(fā)表于 09-19 07:35

    什么是PCB三防膠?作用是什么?

    什么是PCB三防膠?作用是什么?什么是PCB三防膠?PCB三防膠,也被稱為線路板三防膠或涂覆膠,是一種特殊配方的涂料型膠粘劑,用于保護(hù)印刷電路板(PCB)及其相關(guān)設(shè)備免受環(huán)境因素的侵蝕。它可以在
    的頭像 發(fā)表于 08-23 09:28 ?1310次閱讀
    什么是PCB三防膠?<b class='flag-5'>它</b>的<b class='flag-5'>作用是</b>什么?

    請問電路中電容C8的作用是什么?

    上面這個(gè)電路中電容C8的作用是什么?下面電路去掉這個(gè)電容之后仿真就不一樣了,幫忙解答一下,謝謝啦
    發(fā)表于 08-21 08:24

    偏置電路的作用是什么

    偏置電路在電子電路中扮演著非常重要的角色。主要用于為晶體管、場效應(yīng)管等半導(dǎo)體器件提供穩(wěn)定的工作點(diǎn),確保電路能夠正常工作。 偏置電路的基本概念 偏置電路,又稱為偏置電壓源或偏置電流源,是一種用于給
    的頭像 發(fā)表于 07-12 14:16 ?3407次閱讀