乱码乱a∨中文字幕,在线免费激情视频,亚洲欧美久久夜夜潮,国产在线网址

  1. <sub id="hjl7n"></sub>

    1. <sub id="hjl7n"></sub>

      <legend id="hjl7n"></legend>

      當前位置:首頁 >  站長 >  數(shù)據(jù)庫 >  正文

      詳解partition by和group by對比

       2020-10-20 11:58  來源: 腳本之家   我來投稿 撤稿糾錯

        阿里云優(yōu)惠券 先領(lǐng)券再下單

      這篇文章主要介紹了詳解partition by和group by對比,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

      今天大概弄懂了partition by和group by的區(qū)別聯(lián)系。

      1. group by是分組函數(shù),partition by是分析函數(shù)(然后像sum()等是聚合函數(shù));

      2. 在執(zhí)行順序上,

      以下是常用sql關(guān)鍵字的優(yōu)先級

      from > where > group by > having > order by

      而partition by應(yīng)用在以上關(guān)鍵字之后,實際上就是在執(zhí)行完select之后,在所得結(jié)果集之上進行partition。

      3.partition by相比較于group by,能夠在保留全部數(shù)據(jù)的基礎(chǔ)上,只對其中某些字段做分組排序(類似excel中的操作),而group by則只保留參與分組的字段和聚合函數(shù)的結(jié)果(類似excel中的pivot)。

      partition by

      4.如果在partition結(jié)果上聚合,千萬注意聚合函數(shù)是逐條累計運行結(jié)果的!而在group by后的結(jié)果集上使用聚合函數(shù),會作用在分組下的所有記錄上。

      數(shù)據(jù)如下,

      SQL1

      select a.cc,a.item,sum(a.num)
      from table_temp a
      group by a.cc,a.item

      Result1

      11條記錄經(jīng)group by后為10條,其中cc='cn' and item='8.1.1'對應(yīng)的兩條記錄的num匯總成值3.

      SQL2

      select a.cc,a.num, min(a.num) over (partition by a.cc order by a.num asc) as amount
      from table_temp a
      group by a.cc,a.num;

      select a.cc,a.num, min(a.num) over (partition by a.cc order by a.num desc) as amount
      from table_temp a
      group by a.cc,a.num;

      Result2

      兩個sql的唯一區(qū)別在于a.num的排序上,但從結(jié)果紅框中的數(shù)據(jù)對比可以看到amount值并不相同,且第二個結(jié)果集amount并不都是最小值1。

      在這里就是要注意將聚合函數(shù)用在partition后的結(jié)果集上時,聚合函數(shù)是逐條累積計算值的!

      其實partition by常同row_number() over一起使用,

      select a.*, row_number() over (partition by a.cc,a.item order by a.num desc) as seq
      from table_temp a

      到此這篇關(guān)于詳解partition by和group by對比的文章就介紹到這了,更多相關(guān)partition by和group by內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

      來源:腳本之家

      鏈接:https://www.jb51.net/article/194784.htm

      申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機遇!

      相關(guān)文章

      熱門排行

      信息推薦