0
在我的查詢中,我選擇了當前的貸款餘額。我還創建了一個列,返回每個貸款餘額所屬的五分位數。SQL - 如何返回每個五分位數的最小值和最大值
我用這個語句
NTILE(5) OVER (ORDER BY CurrLoanBal)
從這裏,我怎麼回每個五分之一的最小值和最大值?我不想分組任何行,我希望每行都顯示特定五分位數的最小值和最大值。
在我的查詢中,我選擇了當前的貸款餘額。我還創建了一個列,返回每個貸款餘額所屬的五分位數。SQL - 如何返回每個五分位數的最小值和最大值
我用這個語句
NTILE(5) OVER (ORDER BY CurrLoanBal)
從這裏,我怎麼回每個五分之一的最小值和最大值?我不想分組任何行,我希望每行都顯示特定五分位數的最小值和最大值。
您需要在您的分區by子句決定如何將數據分割(「分組」),不進行分組同樣的方式一組通過將使用聚合函數和分區
select s.col1, s.col2, ... s.colN,
max(s.col1) over (partition by s.col2, ...),
min(s.col1) over (partition by s.col2, ...)
from stuff as s;
。這樣窗口函數就會應用到每個分區,爲您提供所需的數據。
分區中的列按位確定行的分區方式(在您的情況下,將五分位數與另一個五分位數分隔開)。
查看https://msdn.microsoft.com/en-us/library/ms189461.aspx瞭解更多信息。
謝謝!這正是我想要的。 –
http://sqlfiddle.com/#!3/50d40/6 –