能翻到這篇博文的,想必大家對窗口函數的基本使用已經有了壹定的了解,這裏就不廢話再去多說了。
這篇博文主要講的是,如果在 窗口函數中加入where條件 。
為了方便理解,以下案例使用排名函數:row_number()來講解。其他窗口函數同理,大家舉壹反三。
本文妳可以學習到:
我們如果要對壹組數據根據某個列去排名,壹般會使用row_number(),但是如果我們要對某個列符合條件的才去row_number()進行排名,
舉個例子,現有壹組數據:
我們想對 score列大於300的數據進行排名(從1開始),小於等於300數據則填充默認值null。
本文通過壹個排名案例說明並解釋了如何在窗口函數中添加where條件達到我們預期的效果,大家可以舉壹反三。
兩種方法都可以,但是我還是熱衷於第二種方法,簡單高效。
這麽寫SQL真是的太妙妙妙~~~~
-- by 倆只猴