2022-08-12
閱讀量:
407
開窗函數(shù)使用
開窗函數(shù)的一個(gè)概念是當(dāng)前行,當(dāng)前行屬于某個(gè)窗口,窗口由 over關(guān)鍵字用來指定函數(shù)執(zhí)行的窗口范圍,如果后面括號(hào)中什么都不寫,則意味著窗口包含滿足where 條件的所有行,開窗函數(shù)基于所有行進(jìn)行計(jì)算;如果不為空,則有三個(gè)參數(shù)來設(shè)置窗口:
partition by子句:按照指定字段進(jìn)行分區(qū),兩個(gè)分區(qū)由邊界分隔,開窗函數(shù)在不同的分區(qū)內(nèi)分別 執(zhí)行,在跨越分區(qū)邊界時(shí)重新初始化。
order by子句:按照指定字段進(jìn)行排序,開窗函數(shù)將按照排序后的記錄順序進(jìn)行編號(hào)??梢院?partition by子句配合使用,也可以單獨(dú)使用。
range|rows子句:當(dāng)前分區(qū)的一個(gè)子集,用來定義子集的規(guī)則,通常用來作為滑動(dòng)窗口使用。 示例:查詢每個(gè)用戶按下單時(shí)間順序,前一行和后一行記錄的平均訂單金額。






評(píng)論(0)


暫無數(shù)據(jù)
CDA考試動(dòng)態(tài)
CDA報(bào)考指南
推薦帖子
0條評(píng)論
1條評(píng)論
0條評(píng)論