校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > PostgreSQL數(shù)據(jù)庫中窗口函數(shù)的語法與使用

PostgreSQL數(shù)據(jù)庫中窗口函數(shù)的語法與使用

熱門標(biāo)簽:打電話智能電銷機(jī)器人授權(quán) 外呼調(diào)研系統(tǒng) 美容工作室地圖標(biāo)注 合肥公司外呼系統(tǒng)運(yùn)營商 重慶自動外呼系統(tǒng)定制 海豐有多少商家沒有地圖標(biāo)注 地圖標(biāo)注和圖片名稱的區(qū)別 辦公外呼電話系統(tǒng) 漯河外呼電話系統(tǒng)

什么是窗口函數(shù)?

一個窗口函數(shù)在一系列與當(dāng)前行有某種關(guān)聯(lián)的表行上執(zhí)行一種計(jì)算。這與一個聚集函數(shù)所完成的計(jì)算有可比之處。但是窗口函數(shù)并不會使多行被聚集成一個單獨(dú)的輸出行,這與通常的非窗口聚集函數(shù)不同。取而代之,行保留它們獨(dú)立的標(biāo)識。在這些現(xiàn)象背后,窗口函數(shù)可以訪問的不僅僅是查詢結(jié)果的當(dāng)前行。

  • 可以訪問與當(dāng)前記錄相關(guān)的多行記錄;
  • 不會使多行聚集成一行, 與聚集函數(shù)的區(qū)別;

窗口函數(shù)語法

窗口函數(shù)跟隨一個 OVER 子句, OVER 子句決定究竟查詢中的哪些行被分離出來由窗口函數(shù)處理。

可以包含分區(qū) (PARTITION BY) 和排序 (ORDER BY) 指令, 這二者都是可選的。

window_func() OVER([PARTITION BY field] [ORDER BY field])

如果沒有指定 PARTITION BY 和 ORDER BY 指令, 則等同于聚合函數(shù), 對全部數(shù)據(jù)進(jìn)行計(jì)算。

PARTITION BY 子句將查詢的行分組成為分區(qū), 窗口函數(shù)會獨(dú)立地處理它們。PARTITION BY 工作起來類似于一個查詢級別的 GROUP BY 子句, 不過它的表達(dá)式總是只是表達(dá)式并且不能是輸出列的名稱或編號。 如果沒有 PARTITION BY, 該查詢產(chǎn)生的所有行被當(dāng)作一個單一分區(qū)來處理。

ORDER BY 子句決定被窗口函數(shù)處理的一個分區(qū)中的行的順序。 它工作起來類似于一個查詢級別的 ORDER BY 子句, 但是同樣不能使用輸出列的名稱或編號。 如果沒有 ORDER BY, 行將被以未指定的順序被處理。

PostgreSQL 中的聚合函數(shù)也可以作為窗口函數(shù)來使用

除了這些內(nèi)置的窗口函數(shù)外,任何內(nèi)建的或用戶定義的通用或統(tǒng)計(jì)聚集(也就是有序集或假想集聚集除外)都可以作為窗口函數(shù)。僅當(dāng)調(diào)用跟著OVER子句時,聚集函數(shù)才會作為窗口函數(shù);否則它們作為非窗口的聚集并為剩余的集合返回單行。

窗口函數(shù)示例

員工工資 (emp_salary) 表結(jié)構(gòu)如下:

SELECT emp_no, dep_name, salary
FROM public.emp_salary
order by dep_name, emp_no;

emp_id dep_name salary
7 develop 4200
8 develop 6000
9 develop 4500
10 develop 5200
11 develop 5200
2 personnel 3900
5 personnel 3500
1 sales 5000
3 sales 4800
4 sales 4800

如果要將每位員工與其部門的平均工資進(jìn)行對比, 需要這樣的結(jié)果:

emp_id dep_name salary avg
7 develop 4200 5020
8 develop 6000 5020
9 develop 4500 5020
10 develop 5200 5020
11 develop 5200 5020
2 personnel 3900 3700
5 personnel 3500 3700
1 sales 5000 4866.66666666667
3 sales 4800 4866.66666666667
4 sales 4800 4866.66666666667

如果不用窗口函數(shù)來查詢, 則比較復(fù)雜, 當(dāng)然也能做到, 語句如下:

SELECT e0.emp_no, e0.dep_name, e0.salary, e2.avg_salary
FROM public.emp_salary e0
join (
 select e1.dep_name, avg(e1.salary) as avg_salary
 from public.emp_salary e1
 group by e1.dep_name
) e2 on e2.dep_name = e0.dep_name
order by e0.dep_name, e0.emp_no;

如果使用窗口函數(shù)進(jìn)行查詢, 則很容易做到, sql 語句如下:

SELECT emp_no, dep_name, salary,
  avg(salary) over(partition by dep_name)
FROM public.emp_salary
order by dep_name, emp_no;

但是如果要查詢隨著員工的增加, 各部門平均工資的變化, 如下表所示的結(jié)果, 不用窗口函數(shù)查詢的話就很難做到了。

emp_id dep_name salary avg
7 develop 4200 4200
8 develop 6000 5100
9 develop 4500 4900
10 develop 5200 4975
11 develop 5200 5020
2 personnel 3900 3900
5 personnel 3500 3700
1 sales 5000 5000
3 sales 4800 4900
4 sales 4800 4866.66666666667

如果使用窗口函數(shù), 依然可以輕松完成, 語句如下:

SELECT emp_no, dep_name, salary,
  avg(salary) over(partition by dep_name order by emp_no)
FROM public.emp_salary
order by dep_name, emp_no;

可見, 窗口函數(shù)在需要對查詢結(jié)果中的相關(guān)行進(jìn)行計(jì)算時有很大的優(yōu)勢。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • MySQL8.0窗口函數(shù)入門實(shí)踐及總結(jié)
  • Mysql8.0使用窗口函數(shù)解決排序問題
  • SQL2005 學(xué)習(xí)筆記 窗口函數(shù)(OVER)
  • SQL 窗口函數(shù)實(shí)現(xiàn)高效分頁查詢的案例分析

標(biāo)簽:株洲 衡陽 錦州 蚌埠 珠海 晉城 烏海 來賓

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PostgreSQL數(shù)據(jù)庫中窗口函數(shù)的語法與使用》,本文關(guān)鍵詞  PostgreSQL,數(shù)據(jù)庫,中,窗口,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PostgreSQL數(shù)據(jù)庫中窗口函數(shù)的語法與使用》相關(guān)的同類信息!
  • 本頁收集關(guān)于PostgreSQL數(shù)據(jù)庫中窗口函數(shù)的語法與使用的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    亚洲永久免费av| 91精品视频网| 亚洲品质自拍视频| 成人av资源在线观看| 日本一区二区不卡视频| 懂色一区二区三区免费观看| 中文字幕乱码亚洲精品一区| 国产一区二区精品久久91| 国产亲近乱来精品视频| 91色在线porny| 亚洲一区二区三区自拍| 欧美一区二区三区不卡| 国内精品不卡在线| 亚洲美女视频在线| 51久久夜色精品国产麻豆| 精品一区二区三区免费毛片爱| 久久蜜臀中文字幕| 欧美四级电影网| 精品一区二区在线免费观看| 欧美国产亚洲另类动漫| 久久影视一区二区| 综合av第一页| 国产欧美日韩另类一区| 精品sm在线观看| 国产成人精品综合在线观看| 亚洲国产精品精华液ab| 91成人免费在线| 蜜臀av性久久久久av蜜臀妖精| 777xxx欧美| 国产精品1区2区3区在线观看| 中文字幕一区二区三区色视频 | 欧美高清你懂得| 91黄色免费看| 成人av资源站| 国产精品正在播放| 激情丁香综合五月| 天天做天天摸天天爽国产一区| 中文字幕一区二区三| 26uuu精品一区二区| 亚洲精品在线观看网站| 精品国产一区二区三区av性色| 亚洲精品日韩一| 自拍偷拍国产精品| 欧美国产禁国产网站cc| 欧美日韩免费一区二区三区 | 国产精品超碰97尤物18| 国产精品久久久久国产精品日日| 欧美一级在线观看| 欧美一级欧美三级在线观看| 色综合久久久网| 裸体在线国模精品偷拍| 中文字幕不卡三区| 亚洲视频免费观看| 精品va天堂亚洲国产| 国产高清精品久久久久| 精品一区二区在线看| 日本不卡一区二区三区高清视频| 最新国产の精品合集bt伙计| 一区二区三区久久久| 久久一区二区视频| 精品国产乱码久久| 精品三级av在线| 欧美欧美欧美欧美| 91污在线观看| 日韩国产欧美视频| 丝袜美腿高跟呻吟高潮一区| 国产一区二区三区综合 | 欧美亚洲动漫精品| 极品少妇一区二区| 日欧美一区二区| 成人aa视频在线观看| 亚洲精品一区二区三区福利| 亚洲综合激情网| av中文字幕不卡| 91免费看片在线观看| 色综合天天综合在线视频| 欧美日韩精品一区二区天天拍小说| 日韩午夜激情视频| 玉足女爽爽91| 欧美亚洲一区二区在线| 欧美一区二区三区视频免费| 欧美日本一道本在线视频| 9久草视频在线视频精品| 国产精品自拍在线| 亚洲永久精品大片| 国产91富婆露脸刺激对白 | av资源站一区| 欧美一级理论性理论a| 天天做天天摸天天爽国产一区| 狠狠色丁香九九婷婷综合五月| 一本到高清视频免费精品| 久久久久久日产精品| 免费视频一区二区| 欧美日韩国产小视频| 亚洲精品国产无套在线观| 国产凹凸在线观看一区二区| 日韩视频永久免费| 日韩av二区在线播放| 欧美性videosxxxxx| 一区二区三区在线观看动漫| 成人精品国产福利| 国产精品久久久久一区二区三区 | 亚洲va国产天堂va久久en| 亚洲国产一区在线观看| 亚洲第一狼人社区| 国产黄色精品视频| 日韩欧美www| 久久99日本精品| 精品国产乱码久久久久久老虎 | 色综合天天综合在线视频| 国产成a人亚洲| 欧美亚男人的天堂| 制服丝袜激情欧洲亚洲| 亚洲国产精品成人综合| 色婷婷综合五月| 亚洲综合色网站| av在线一区二区三区| 亚洲精品高清在线观看| 欧美日韩视频在线第一区| 日本欧洲一区二区| 精品国产一区久久| 成人午夜免费av| 亚洲成人三级小说| 国产欧美精品国产国产专区| av福利精品导航| 日本视频一区二区| 亚洲欧美日韩成人高清在线一区| 欧美日韩在线亚洲一区蜜芽| 国产精品一区免费在线观看| 亚洲靠逼com| 亚洲国产精品精华液2区45| 欧美色视频在线观看| 国产精品亚洲视频| 免费成人在线影院| 亚洲成人中文在线| 国产精品人妖ts系列视频| 日韩一区二区三区精品视频| 色综合天天狠狠| 成人一区二区视频| 美女免费视频一区二区| 亚洲一区二区三区四区在线观看| 中文字幕精品一区| 中文字幕第一页久久| 精品国产乱码91久久久久久网站| 欧美日韩性生活| 欧美日韩国产精品成人| 欧美伊人久久久久久久久影院| 成人免费三级在线| 成人黄色大片在线观看| 国产91精品久久久久久久网曝门| 亚洲国产色一区| 欧美激情一区不卡| 国产精品久久久久毛片软件| 国产日韩影视精品| 国产精品福利av| 亚洲精品久久嫩草网站秘色| 亚洲男女毛片无遮挡| 玉米视频成人免费看| 天天av天天翘天天综合网| 午夜影院久久久| 男男gaygay亚洲| 国产一区二区成人久久免费影院| 免费成人av资源网| 中文字幕中文字幕中文字幕亚洲无线| 欧美激情资源网| 一区二区成人在线视频| 日韩中文欧美在线| 精品亚洲免费视频| 91丨porny丨在线| 日韩视频免费观看高清完整版| 久久色.com| 性做久久久久久免费观看 | 久久久亚洲综合| 成人欧美一区二区三区视频网页| 视频一区二区三区入口| 国产露脸91国语对白| 91精品久久久久久蜜臀| 国产精品蜜臀在线观看| 青青草精品视频| 色偷偷久久一区二区三区| 久久亚洲一区二区三区明星换脸 | 中文字幕一区二区三区av| 日日夜夜精品视频天天综合网| 成人精品国产福利| 日韩亚洲欧美综合| 亚洲美女淫视频| 成人国产精品免费观看动漫| 欧美精品乱人伦久久久久久| 综合在线观看色| 国产综合久久久久久久久久久久| 欧美色综合影院| 亚洲激情自拍偷拍| 91女厕偷拍女厕偷拍高清| 日本一区二区成人| 国产成人免费视频网站高清观看视频| 欧美久久久久久久久久| 日韩黄色免费电影| 欧美日韩精品久久久| 婷婷亚洲久悠悠色悠在线播放 | 成人不卡免费av|