国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

TSQL基礎(二)

2024-07-21 02:48:26
字體:
來源:轉載
供稿:網友
TSQL基礎(二)over() 開窗函數排名函數必須和over()一起使用,所以先了解over()。OVER 子句定義查詢結果集內的窗口或用戶指定的行集。然后,開窗函數將計算窗口中每一行的值。您可以將 OVER 子句與函數一起使用,以便計算各種聚合值,例如移動平均值、累積聚合、運行總計或每組結果的前 N 個結果。
 select *,COUNT(*) over() '全班人數' from   Student 

  select *,COUNT(*) over(partition by Ssex) '性別人數' from   Student  --over()中加入partition by Ssex表示 按Ssex字段分組 男女分別為4人。

排名函數4種排名:1.ROW_NUMBER() , 2.RANK(), 3.dense_rank(), 4.NTILE(N)row_number() over(order byfield) 根據over中order by 字段進行排名 輸出結果為有序的行號rank() over(order by field)根據over中order by 字段進行排名 輸出結果為排名序號有并列而且會斷號dense_rank() over(order by field)根據over中order by 字段進行排名 輸出結果為排名序號有并列不會斷號ntile(N) over(order by field))根據over中order by 字段進行排名 并根據ntile(N)中類型為int參數N進行分組
 select *,ROW_NUMBER() over(order by year(sage)) 'rownumber行號',           RANK() over(order by year(sage)) 'rank有并列而且會出現斷號',          dense_rank() over (order by year(sage)) 'dense_rank密集排名',          NTILE(4) over(order by year(sage)) '分組排名' from  Student 

也可以在over中加入partition by
  select *,ROW_NUMBER() over(partition by year(sage)  order by year(sage)) 'rownumber行號'  ,                  RANK() over( partition by year(sage) order by year(sage)) 'rank有并列而且會出現斷號'    ,                  dense_rank() over ( partition by year(sage) order by year(sage)) 'dense_rank密集排名',                    NTILE(4) over(partition by  year(sage) order by year(sage)) '分組排名'from  Student 

補充:with ties指定從基本結果集中返回附加的行,這些行包含與出現在TOPn(PERCENT)行最后的ORDERBY列中的值相同的值。
  select top 3 with ties  * from Student order by year(sage) --只取前3行,如果最后第3行中sage的年份和后面的年份相同,則附加隨后的行


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沂南县| 麻栗坡县| 绩溪县| 平果县| 大厂| 鞍山市| 白城市| 清新县| 鄯善县| 体育| 武夷山市| 松桃| 韩城市| 岚皋县| 合阳县| 湟中县| 叙永县| 青田县| 乌鲁木齐县| 清丰县| 西青区| 泌阳县| 水富县| 东港市| 静乐县| 祥云县| 凤台县| 郓城县| 建昌县| 嵊州市| 崇义县| 尼勒克县| 顺平县| 綦江县| 舞钢市| 清涧县| 历史| 佛学| 灵丘县| 新巴尔虎左旗| 昭苏县|