Сгруппировать повторные предложения вместе в Postgres

Это означает, что вы пытаетесь получить доступ к индексу массива, который недопустим, поскольку он не находится между границами.

Например, это инициализировало бы примитивный целочисленный массив с верхней границей 4 .

int intArray[] = new int[5];

Программисты подсчитываются с нуля. Таким образом, это, например, выбрало бы ArrayIndexOutOfBoundsException, поскольку верхняя граница равна 4, а не 5.

intArray[5];
0
задан Jivan 4 March 2019 в 12:48
поделиться

1 ответ

Вы можете определить окно в предложении FROM. Например:

select v.*, row_number() over w
from (values (1, 2), (1, 3)) v(x, y)
     window w as (partition by x order by y)

В вашем конкретном примере я могу предположить что-то вроде этого:

select . . .
       (case when household_key = lag(household_key) over w and
                  product_id = lag(product_id) over w
        then dt - lag(dt) over w
        end) as delta
from . . .
     window w as (order by household_key, product_id, dt)
0
ответ дан Gordon Linoff 4 March 2019 в 12:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: