Я хотел бы использовать функцию LAG()
в al oop, где второй аргумент offset
увеличивается с каждой итерацией, как показано ниже:
BEGIN
DECLARE i INT64 DEFAULT 1;
WHILE i < 6 DO
SELECT
col1_cat
,col2_ts
,col3_val
,LAG(col3_val, i) OVER(PARTITION BY col1_cat ORDER BY col2_ts DESC) AS col3_val_lag1
FROM
my_table;
SET i = i + 1;
END WHILE;
END;
К сожалению, документы и Ошибка, дайте понять, что
Аргумент 2 для LAG должен быть литералом или параметром запроса
Как мне выполнить sh эту задачу, избегая этой ошибки?