这是我的输入和预期输出。我尝试使用等级和标志来确定如何重置等级,但似乎无法使其工作。
输入:
Type Date Rank
PA 1/1/2000 1
ON 1/2/2000 2
Acq 1/4/2000 3
PA 2/1/2000 4
ON 4/2/2000 5
ON 6/3/2000 6
PA 6/11/2000 7
输出:
Type Date Rank
PA 1/1/2000 1
ON 1/2/2000 2
Acq 1/4/2000 3
PA 2/1/2000 1
ON 4/2/2000 2
ON 6/3/2000 3
PA 6/11/2000 1
基本上只要type等于pa,它就应该重置计数。
在bigquery中尝试这样做
2条答案
按热度按时间t98cgbkg1#
您可以通过使用
'PA'
. 我推荐countif()
:如果你已经有了
rank
作为一列,还可以减去'PA'
. 那就是:g6baxovj2#
您可以使用pa创建一个虚拟组。因此,每当新pa行出现时,组索引将增加1。我把那列命名为reset\u group。
然后,我将此列用作分区列,并使用row\ u number()计算组内的排名。