分組排序row_number() over()函數(shù)

函數(shù)作用:用于分組排序。
這里有一張車輛出車信息表:CARTIMEINFO_OBD帅刊,
任務:查詢出每輛車最新出車時間。

效果:(后面的RN自選)
效果圖.png
漂问。
分析:思路很簡單赖瞒,我們只需要對每輛車車牌號進行分組,分組后取最新OUT_TIME就可以了蚤假。
問題:一開始我在mysql數(shù)據(jù)庫中直接通過group by plate_number order by out_time有數(shù)據(jù)并且是分組了栏饮,但是出車的時間確實最早的,這并不是我們想要的效果磷仰。我在orcale數(shù)據(jù)庫中同樣適用上述語句查詢袍嬉,結(jié)果查詢語句不正確.....

首先需要理解row_number() over()這個函數(shù)的用法,看下面sql:

SELECT 
    PLATE_NUMBER,
    OUT_TIME,
    ROW_NUMBER() OVER( PARTITION BY PLATE_NUMBE ORDER BY OUT_TIME DESC) rn 
 FROM CARTIMEINFO_OBD

over()中關(guān)鍵詞PARTITION BY:以PLATE_NUMBER(車牌號)分組灶平,
ORDER BY:這個跟容易理解伺通,就是排序,當然這里是分組后進行排序逢享,
這里的RN就是每組的排序了(-_- )罐监。
該sql查詢后如圖:

分組排序后.png

以上初步解決了怎么分組和排序的問題,接下來只需要通過RN取出我們需要的數(shù)據(jù)了瞒爬,這里我只需要取出最新出車時間弓柱,在函數(shù)中我們通過ORDER BY OUT_TIME DESC進行了降序沟堡,所以只需要在后面增加條件WHERE RN=1就是我們需要的了。如下sql:

SELECT 
  a.PLATE_NUMBER PLATE_NUMBER,
  a.OUT_TIME OUT_TIME   
FROM ( 
   SELECT 
   PLATE_NUMBER,
   OUT_TIME,  
   ROW_NUMBER() OVER( PARTITION BY PLATE_NUMBER ORDER BY OUT_TIME DESC) rn 
   FROM CARTIMEINFO_OBD) a WHERE a.rn=1

贈送車牌號搜索:(總感覺有些別扭這句sql -_-)

SELECT * FROM(
SELECT 
    a.PLATE_NUMBER PLATE_NUMBER,
    a.OUT_TIME OUT_TIME
FROM ( 
    SELECT 
    PLATE_NUMBER,
    OUT_TIME,
    ROW_NUMBER() OVER( PARTITION BY PLATE_NUMBER ORDER BY OUT_TIME DESC) rn 
    FROM CARTIMEINFO_OBD ) a WHERE a.rn=1
    )WHERE 1=1
        <if test="plateNumber!=null and plateNumber!=''">
            and PLATE_NUMBER=#{plateNumber}
        </if>
    ORDER BY OUT_TIME DESC

//4.17
mmp的矢空,突然想到要獲取最新的數(shù)據(jù)直接用SELECT * FROM CARTIMEINFO WHERE OUT_TIME = (SELECT max(OUT_TIME) FROM CARTIMEINFO_OBD)就可以獲取了呀......航罗,

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市屁药,隨后出現(xiàn)的幾起案子粥血,更是在濱河造成了極大的恐慌,老刑警劉巖酿箭,帶你破解...
    沈念sama閱讀 219,039評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件立莉,死亡現(xiàn)場離奇詭異,居然都是意外死亡七问,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評論 3 395
  • 文/潘曉璐 我一進店門茫舶,熙熙樓的掌柜王于貴愁眉苦臉地迎上來械巡,“玉大人,你說我怎么就攤上這事饶氏〖ズ模” “怎么了?”我有些...
    開封第一講書人閱讀 165,417評論 0 356
  • 文/不壞的土叔 我叫張陵疹启,是天一觀的道長古程。 經(jīng)常有香客問我,道長喊崖,這世上最難降的妖魔是什么挣磨? 我笑而不...
    開封第一講書人閱讀 58,868評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮荤懂,結(jié)果婚禮上茁裙,老公的妹妹穿的比我還像新娘。我一直安慰自己节仿,他們只是感情好晤锥,可當我...
    茶點故事閱讀 67,892評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著廊宪,像睡著了一般矾瘾。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上箭启,一...
    開封第一講書人閱讀 51,692評論 1 305
  • 那天壕翩,我揣著相機與錄音,去河邊找鬼册烈。 笑死戈泼,一個胖子當著我的面吹牛婿禽,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播大猛,決...
    沈念sama閱讀 40,416評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼扭倾,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了挽绩?” 一聲冷哼從身側(cè)響起膛壹,我...
    開封第一講書人閱讀 39,326評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎唉堪,沒想到半個月后模聋,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,782評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡唠亚,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,957評論 3 337
  • 正文 我和宋清朗相戀三年链方,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片灶搜。...
    茶點故事閱讀 40,102評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡祟蚀,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出割卖,到底是詐尸還是另有隱情前酿,我是刑警寧澤,帶...
    沈念sama閱讀 35,790評論 5 346
  • 正文 年R本政府宣布鹏溯,位于F島的核電站罢维,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏丙挽。R本人自食惡果不足惜肺孵,卻給世界環(huán)境...
    茶點故事閱讀 41,442評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望颜阐。 院中可真熱鬧悬槽,春花似錦、人聲如沸瞬浓。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,996評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽猿棉。三九已至磅叛,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間萨赁,已是汗流浹背弊琴。 一陣腳步聲響...
    開封第一講書人閱讀 33,113評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留杖爽,地道東北人敲董。 一個月前我還...
    沈念sama閱讀 48,332評論 3 373
  • 正文 我出身青樓紫皇,卻偏偏與公主長得像,于是被迫代替她去往敵國和親腋寨。 傳聞我的和親對象是個殘疾皇子聪铺,可洞房花燭夜當晚...
    茶點故事閱讀 45,044評論 2 355

推薦閱讀更多精彩內(nèi)容