1、rank()
在計算排序時,若存在相同位次,會跳過之後的位次。
例如,有3條排在第1位時,排序為:1,1,1,4······
2、dense_rank()
這就是題目中所用到的函式,在計算排序時,若存在相同位次,不會跳過之後的位次。
例如,有3條排在第1位時,排序為:1,1,1,2······
3、row_number()
這個函式賦予唯一的連續位次。
例如,有3條排在第1位時,排序為:1,2,3,4······
視窗函式用法:
《視窗函式》 over ( [partition by 《列清單》 ]
order by 《排序用列清單》 )
*其中[ ]中的內容可以忽略
題目描述
有乙個薪水表salaries簡況如下:
題目要求:對所有員工的薪水按照salary進行按照1-n的排名,相同salary並列且按照emp_no公升序排列:
輸出示例:
題解:
select emp_no,salary,
dense_rank(
)over
(order
by salary desc
)as t_rank
from salaries
where to_date=
'9999-01-01'
order
by t_rank asc
,emp_no asc
//本題使用的函式是dense_rank()
//初步了解用法
三種資料庫sql分頁查詢
關於sql分頁 今天用到分頁了順便就總結了一下 mysql 資料庫 mysql 中有分頁的關鍵字limit,它可以實現分頁很簡單 select from sys user order by userid limit startno,total startno 是查詢開始的行數,total 是要查詢出...
三種資料庫利用SQL語句進行高效果分頁
在程式的開發過程中,處理分頁 是大家接觸比較頻繁的事件,因為現在軟體基本上都是與資料庫進行掛釣的。但效率又是我們所追求的,如果是像原來那樣把所有滿足條件的記錄全部都選擇出來,再去進行分頁處理,那麼就會多多的浪費掉許多的系統處理時間。為了能夠把效率提高,所以現在我們就只選擇我們需要的資料,減少資料庫的...
三種資料庫利用SQL語句進行高效果分頁
在程式開發中,處理分頁往往是比較頻繁的事件,因為現在軟體基本上都是與資料庫進行掛釣的。但效率又是我們所追求的,如果是像原來那樣把所有滿足條件的記錄全部都選擇出來,再去進行分頁處理,那麼就會多多的浪費掉許多的系統處理時間。為了能夠把效率提高,所以現在我們就只選擇我們需要的資料,減少資料庫的處理時間,以...