k**g 发帖数: 1558 | 1 试过下面的,不行。第一个非Null的数据Ntile就是6,我一共有10000+数据
select *,
(CASE WHEN PB IS NOT NULL THEN NTILE(100) OVER(ORDER BY PB ASC) ELSE NULL
END) AS Rnk_PB6
into #temp6
from #temp5 | g***l 发帖数: 18555 | 2 RANK就是排序啊,你NULL怎么排序,当然先把NULL替换掉再去排,插队肯定是不行的 | k**g 发帖数: 1558 | 3 现在出现的问题是Null 有rank,而且rank不一样,见如下:
value rank
null 1
null 2
3 3
4 4
【在 g***l 的大作中提到】 : RANK就是排序啊,你NULL怎么排序,当然先把NULL替换掉再去排,插队肯定是不行的
| B*****g 发帖数: 34098 | 4 rank null as higher rank, then when value is null, do not display rank
【在 k**g 的大作中提到】 : 现在出现的问题是Null 有rank,而且rank不一样,见如下: : value rank : null 1 : null 2 : 3 3 : 4 4
| k**g 发帖数: 1558 | 5 Thanks. Baozi sent
【在 B*****g 的大作中提到】 : rank null as higher rank, then when value is null, do not display rank
| g***l 发帖数: 18555 | 6 不行吧,CASE NULL THEN STH,很容易出错的,在加上一层RANK,一般对NULL RECORDS
都要分别处理的, |
|