【发布时间】:2017-08-22 22:16:08
【问题描述】:
您好,在排名方面寻求帮助。
我正在使用 SQL 处理 Teradata,我正在尝试按特定组然后按年龄对列表进行排名。
例如:我想按组排名,然后只对所选组下 21 岁以下的人进行排名。
但是,当我使用下面的查询时,它似乎没有考虑到组中的成员,并且只有当他们满足 case 语句中的条件时才分配。
select
policy,
age,
case when age <'21' then '1'else '0' end as Under21,
case when age <'21' then dense_rank () over (order by group, age desc) else '0' end as Rank_Under_21
from Table
【问题讨论】:
标签: sql teradata ranking ranking-functions