久久机这里只有精品,国产69精品一区二区亚洲孕妇,91精品国产综合久久婷婷香蕉,午夜久久久久久电影

最新活動:電腦PC端+手機端+微網站+自適應網頁多模板選擇-建站388元起價!!!
當前位置:主頁 > 網站建設 > SQL Server 總結復習 (二)建站知識

SQL Server 總結復習 (二)建站知識

時間:2023-05-23 22:05:23 閱讀: 文章分類: 網站建設 作者: 網絡小編

導讀:1建站知識SQL Server 總結復習,學習sqlserver的朋友可以參考下網站建設制作百度seo網站優化。

網站建設制作百度seo網站優化1. 排名函數與PARTITION BY

復制代碼 代碼如下:

--所有數據 SELECT * FROM dbo.student AS a INNER JOIN dbo.ScoreTB AS b ON a.Id = b.stuid WHERE scorename = '語文' ------------------------------------------- --ROW_NUMBER() 的使用 生成列從1開始依次增加 ------------------------------------------- SELECT ROW_NUMBER() OVER (ORDER BY B.SCORE DESC) AS ROWNUMBER ,A.NAME, B.SCORE, a.Id FROM dbo.student AS a INNER JOIN dbo.ScoreTB AS b ON a.Id = b.stuid WHERE scorename = '語文' --也可以在后面再加一個order by,則表示前面生成后的全部列又被以最后的列重新排列(排名列值不變) SELECT ROW_NUMBER() OVER (ORDER BY B.SCORE DESC) AS ROWNUMBER ,A.NAME, B.SCORE, a.Id FROM dbo.student AS a INNER JOIN dbo.ScoreTB AS b ON a.Id = b.stuid WHERE scorename = '語文' ORDER BY a.Id --要在分組統計后使用排名函數,則先進行分組,用cte或嵌套查詢表整出結果集,再用row_number函數處理 WITH b AS ( SELECT stuid, SUM(score) AS score FROM ScoreTB GROUP BY stuid ) SELECT * ,ROW_NUMBER() OVER (ORDER BY b.score desc) AS rownumer FROM dbo.student AS a INNER JOIN b ON a.id = b.stuid ---------------------------------------------------------------------------- --RANK() 用法與ROW_NUMER函數想同,只是在出現order by同級時,排名會設置成一樣,而下一個會根據之前的記錄數生成序號 --例如前面三個是一樣的,那么都是1,下一個則是4,示例略 ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- --DENSE_RANK() 密集排名 用法與ROW_NUMER、RANK函數相同,只是在生成序號時是連續的,而rank函數生成的序號有可能不連續 --例如前面三個是一樣的,那么都是1,下一個則是2,示例略 ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- --ntile函數可以對序號進行分組處理。這就相當于將查詢出來的記錄集放到指定長度的數組中,每一個數組元素存放一定數量的記錄。 --為每條記錄生成的序號就是這條記錄所有的數組元素的索引(從1開始)。也可以將每一個分配記錄的數組元素稱為“桶”。 --它有一個參數,用來指定桶數,例如 ---------------------------------------------------------------------------- SELECT ntile(2) OVER (ORDER BY B.SCORE DESC) AS GROUPID ,A.NAME, ISNULL(B.SCORE,0) SCORE, a.Id FROM dbo.student AS a LEFT JOIN dbo.ScoreTB AS b ON a.Id = b.stuid AND scorename = '語文' -------------------------------------------------------------------------- --PARTITION BY 類似于向排名函數應用一個group by,分組后對每一個組單獨排名 -------------------------------------------------------------------------- --統計各個學科的排名依次為: SELECT RANK() OVER (PARTITION BY b.scorename ORDER BY B.SCORE DESC) AS ROWNUMBER,b.scorename, b.score, A.NAME, a.Id FROM dbo.student AS a INNER JOIN dbo.ScoreTB AS b ON a.Id = b.stuid ORDER BY SCORENAME

關鍵詞標簽: 標題 標簽 SQL

聲明: 本文由我的SEOUC技術文章主頁發布于:2023-05-23 ,文章SQL Server 總結復習 (二)建站知識主要講述標簽,標題,SQL網站建設源碼以及服務器配置搭建相關技術文章。轉載請保留鏈接: http://www.bifwcx.com/article/web_6108.html

我的IDC 網站建設技術SEOUC.COM
專注網站建設,SEO優化,小程序設計制作搭建開發定制網站等,數千家網站定制開發案例,網站推廣技術服務。
  • 5000+合作客服
  • 8年從業經驗
  • 150+覆蓋行業
  • 最新熱門源碼技術文章

    主站蜘蛛池模板: 乾安县| 二手房| 无为县| 丹江口市| 锦屏县| 多伦县| 道孚县| 澄江县| 云安县| 汤原县| 高阳县| 麻阳| 克山县| 丰都县| 库车县| 丰县| 敦化市| 金乡县| 潮安县| 广宁县| 牡丹江市| 渭南市| 瑞丽市| 昌黎县| 利辛县| 顺义区| 临安市| 安仁县| 台江县| 黎川县| 哈尔滨市| 库伦旗| 府谷县| 南岸区| 尚义县| 达尔| 扎赉特旗| 通化县| 永济市| 额济纳旗| 凤凰县|