0

次のように T-SQL NTILE 関数を使用しています。

CREATE TABLE #Temp(val int)
GO
INSERT INTO #Temp(val) VALUES(1);
INSERT INTO #Temp(val) VALUES(2);
INSERT INTO #Temp(val) VALUES(3);

 SELECT val, Quantile
 FROM
(
    SELECT val, NTILE(10) OVER (ORDER BY val) AS Quantile
    FROM
    #Temp

) A


GO

DROP TABLE #Temp

残念ながら結果:

val 分位数

1 1

2 2

3 3

私が期待しているものではありません。レコードが 10 件未満の場合、行は左から右ではなく右から左に埋められると思います。通常、この方法でデータを配布したいので、これは理にかなっています

この問題は、次のコミュニティ アドオンで言及されています: http://msdn.microsoft.com/en-us/library/ms175126.aspx

これを取り除く方法はありますか?

4

1 に答える 1