sql server 2005中的分割槽函式用法(partition by 欄位)
partition by關鍵字是分析性函式的一部分,它和聚合函式不同的地方在於它能返回一個分組中的多條記錄,而聚合函式一般只有一條反映統計值的記錄,partition by用於給結果集分組,如果沒有指定那麼它把整個結果集作為一個分組
create database StudentDB
go
use StudentDB
go
create table Student --學生成績表
(
id int, --主鍵
Grade int, --班級
Score int --分數
)
go
insert Student
select 1,1,88
union all select 2,1,66
union all select 3,1,75
union all select 4,2,30
union all select 5,2,70
union all select 6,2,80
union all select 7,2,60
union all select 8,3,90
union all select 9,3,70
union all select 10,3,80
go
--所有學生資訊
select * from Student
id Grade Score
----------- ----------- -----------
1 1 88
2 1 66
3 1 75
4 2 30
5 2 70
6 2 80
7 2 60
8 3 90
9 3 70
10 3 80
(10 行受影響)
--不分班按學生成績排名
select *,ROW_NUMBER() over(order by Score desc) as Sequence from Student
id Grade Score Sequence
----------- ----------- ----------- --------------------
8 3 90 1
1 1 88 2
6 2 80 3
10 3 80 4
3 1 75 5
9 3 70 6
5 2 70 7
2 1 66 8
7 2 60 9
4 2 30 10
(10 行受影響)
--分班後按學生成績排名
select *,row_number() over(partition by Grade order by Score desc) as Sequence from Student
id Grade Score Sequence
----------- ----------- ----------- --------------------
1 1 88 1
3 1 75 2
2 1 66 3
6 2 80 1
5 2 70 2
7 2 60 3
4 2 30 4
8 3 90 1
10 3 80 2
9 3 70 3
(10 行受影響)
相關文章
- 分割槽函式Partition By的基本用法函式
- MySQL 分割槽表 partition線上修改分割槽欄位MySql
- SQL SERVER 2005表分割槽功能SQLServer
- SQL Server 2005 中的分割槽表和索引應用SQLServer索引
- SQL Server 2005分割槽表例項SQLServer
- Sql Server 2005資料庫分割槽SQLServer資料庫
- Sql Server 2005函式SQLServer函式
- Sql server 分割符函式SQLServer函式
- OVER(PARTITION BY)函式用法函式
- oracle分割槽partition及分割槽索引partition index(一)Oracle索引Index
- Sql server 2005中output用法解析SQLServer
- SQL Server2005 表分割槽三步曲SQLServer
- SQL Server表分割槽SQLServer
- SQL server 分割槽表SQLServer
- 分割槽索引(Partition Index)與SQL執行計劃(中)索引IndexSQL
- SQL Server中row_number函式的常見用法SQLServer函式
- SQL Server 2005裡設定自增欄位SQLServer
- 時間型分割槽欄位不走分割槽的解決
- SQL Server CE和SQL Server 2000/2005中的ISNULL函式的異同SQLServerNull函式
- 聊聊分割槽Partition——我們為什麼要分割槽(中)
- SQL SERVER之分割槽表SQLServer
- SQL Server 2005中的UDF(使用者定義函式)SQLServer函式
- 【實驗】【PARTITION】RANGE分割槽表截斷表分割槽(Truncate Partition)
- 【實驗】【PARTITION】RANGE分割槽表移動表分割槽(Move Partition)
- HGDB的分割槽表實現SQL Server的分割槽檢視SQLServer
- 關於SQL Server的分割槽表SQLServer
- 分割槽表PARTITION table
- ORACLE 範圍分割槽 partition-range分割槽Oracle
- oracle分割槽及分割槽索引partition_partition index_維護(一)Oracle索引Index
- oracle分割槽及分割槽索引partition_partition index_維護(二)Oracle索引Index
- oracle分割槽及分割槽索引partition_partition index_維護(三)Oracle索引Index
- oracle分割槽及分割槽索引partition_partition index_維護(四)Oracle索引Index
- 【實驗】【PARTITION】RANGE分割槽表重新命名錶分割槽(Rename Partition)
- Sql Server系列:分割槽表操作SQLServer
- SQL Server表分割槽詳解SQLServer
- SQL2005查詢表中欄位的描述SQL
- 細說SQL SERVER中欄位型別SQLServer型別
- SQL Server 2005分割槽表幾何倍數提高網站效能SQLServer網站