2016-07-05 70 views
0

我有一个包含以下独特的计数每

ID  SubID 
1  1 
1  2 
2  1 
3  1 

我想,基本上国旗第一个ID和任何后续的ID哪都一样被忽略 本质某人第三列的数据集(最终用户)希望保持信息,而且也总结的唯一ID在Excel

ID  SubID ident 
1  1  1 
1  2  0 
2  1  1 
3  1  1 

我怀疑我可以在这里使用一个rank功能,但希望任何提示

回答

1

没有RANK,但ROW_NUMBER:

select ID, SubID, 
    case when ROW_NUMBER() OVER (PARTITION BY ID ORDER BY SubID) = 1 
     then 1 
     else 0 
    end 
from tab 
1

可以使用row_number()做到这一点:

select t.*, 
     (case when row_number() over (partition by id order by subid) = 1 
      then 1 else 0 
     end) as ident 
from t; 

鉴于你的样本数据,这个简单的版本将工作:

select t.*, (case when subid = 1 then 1 else 0 end) as ident 
from t; 

如果这是你所有的数据的话,那么额外的列可能连是必要的。用户可以使用sumif()countif()在Excel中执行条件逻辑。