over (partition by)
班級表
求各個班級的第一名分數。
其中子查詢出來的資料如下:
rank()和dense_rank()的區別是:
--rank()是跳躍排序,有兩個第二名時接下來就是第四名
--dense_rank()l是連續排序,有兩個第二名時仍然跟著第三名
row_number() over(partition by ... order by ...)
rank() over(partition by ... order by ...)
dense_rank() over(partition by ... order by ...)
count() over(partition by ... order by ...)
max() over(partition by ... order by ...)
min() over(partition by ... order by ...)
sum() over(partition by ... order by ...)
avg() over(partition by ... order by ...)
first_value() over(partition by ... order by ...)
last_value() over(partition by ... order by ...)
lag() over(partition by ... order by ...)
lead() over(partition by ... order by ...)
點選(此處)摺疊或開啟
- select * from class;
求各個班級的第一名分數。
點選(此處)摺疊或開啟
-
select *
-
from (select name,
-
class_no,
-
score,
-
rank() over(partition by class_no order by score desc) rank
-
from class)
- where rank = 1
其中子查詢出來的資料如下:
點選(此處)摺疊或開啟
-
(select name,
-
class_no,
-
score,
-
rank() over(partition by class_no order by score desc) rank
- from class)
rank()和dense_rank()的區別是:
--rank()是跳躍排序,有兩個第二名時接下來就是第四名
--dense_rank()l是連續排序,有兩個第二名時仍然跟著第三名
row_number() over(partition by ... order by ...)
rank() over(partition by ... order by ...)
dense_rank() over(partition by ... order by ...)
count() over(partition by ... order by ...)
max() over(partition by ... order by ...)
min() over(partition by ... order by ...)
sum() over(partition by ... order by ...)
avg() over(partition by ... order by ...)
first_value() over(partition by ... order by ...)
last_value() over(partition by ... order by ...)
lag() over(partition by ... order by ...)
lead() over(partition by ... order by ...)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29990276/viewspace-1660361/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- OVER(PARTITION BY)函式用法函式
- over partition簡單使用
- ROWNUMBER() OVER( PARTITION BY COL1
- 語法:OVER(PARTITION BY)及開窗函式函式
- Oracle使用over()partition by刪除重複記錄Oracle
- 理解了row_number()over (partition by order by )的方法
- row_number() OVER (PARTITION BY COL1 ORDER BY COL2)
- (轉)Oracle語法之OVER(PARTITION BY)及開窗函式Oracle函式
- oracle的分析函式over(Partition by...) 及開窗函式Oracle函式
- Oracle 語法之 OVER (PARTITION BY ..) 及開窗函式 轉載Oracle函式
- Oracle 中分析函式用法之--rank(),dense_rank(),partition,over()Oracle函式
- Oracle統計分析函式集,over(partition by..) 的運用Oracle函式
- MYSQL-實現ORACLE- row_number() over(partition by ) 分組排序功能.MySqlOracle排序
- sql(oracle)資料處理實用總結開窗函式(over partition)使用SQLOracle函式
- row_number() over,rank() over,dense_rank() over的區別
- partition table and partition indexIndex
- PARTITION partition01
- PARTITION partition02
- PARTITION partition04
- sum over partition by函式的用法-但是查出來的資料格式不好給前臺用,廢棄函式
- sum()over()和count()over()分析函式函式
- Import OverImport
- Pruning、Reference Partition、Exchange Partition
- partition timestamp(0) not use partition
- mysql自動排序函式dense_rank() over()、rank() over()、row_num() over()用法和區別MySql排序函式
- PARTITION SPILT
- hive partitionHive
- exchange partition
- oracle partitionOracle
- split partition
- Clique Partition
- 分析函式 over函式
- Partition Pruning和Partition-Wise Joins
- SQL語句中的rank () over , row_number() over ,rank_dense ()SQL
- oracle partition by group by,詳解partition by和group by對比Oracle
- partition table update partition-key result in changing tablespace
- sql shard/partitionSQL
- Partition Pruning