У меня есть таблица sql (bigquery), как показано ниже.
| Name | DaysToGo |Task |ID |
|:-----:|:--------:|:------:|:--:|
| Joe | 50 | A | 1 |
| Joe | 49 | A | 2 |
| Joe | 48 | B | 1 |
| Joe | 47 | B | 2 |
| Joe | 46 | B | 3 |
| Joe | 45 | A | 1 |
| Joe | 47 | A | 2 |
| Joe | 46 | A | 3 |
| Tim | 50 | B | 1 |
| Tim | 49 | B | 2 |
| Tim | 48 | B | 3 |
| Tim | 47 | C | 1 |
| Tim | 46 | B | 1 |
| Tim | 45 | B | 2 |
| Tim | 47 | C | 1 |
| Tim | 46 | C | 2 |
Я хочу создать столбец "ID" на основе изменений в столбце "Задача", разделив по имени. По сути, «ID» должен сбрасываться в 1 каждый раз, когда «Задача» изменяется, и перезапускать счетчик идентификаторов с 1.
Я пытался использовать функции ранга, номера строки и даже задержки, но, похоже, не смог получитьк правильному решению. Есть идеи?