天天看點

ROW_NUMBER () 與 PARTITION 組合妙用

前幾天在一個群裡面,有位網友問:在一個book表裡面裡有字段authorid與author表關聯,現在要求按publishdate字段倒序

排列,列出每個作者的前五本書。要求有沒有一條語句搞定的.

當時有個網友說不能一條語句解決問題,說隻能用遊标或臨時表來解決。恰好我前陣子在整報表時遇到過類似的問題,當時解決過這個問題。當時我就告訴他用

row_number與partition來解決(前提是sql server

05或以上版本)。恰好現在有時間。正好把這個整理一下,即是對知識的梳理、鞏固、總結,也希望能給其他人一些幫助

建表腳本

下面就是解決問題的腳本