Таблица ввода t1:
Требуется вывод:
Подробное описание: Если значения fg и x равны «Carry», тогда значение z должно быть равно вычисленному значению z для предыдущей строки + 1. Иначе z должно быть равно 0. Как в примере, для первой строкимы рассматриваем предыдущее вычисленное значение z как 0, а затем увеличиваем его на 1, так как fg и x равны «Carry».
Во второй строке и fg, и x равны «Carry», и вычисленное значениепредыдущий ряд равен 1, а увеличение его на 1 дает 2.
В третьем ряду, поскольку fg и x оба не равны "Carry", поэтому значение z равно 0.
Я пытался использоватьФункции SUM (), LAST_VALUE () и т. Д., Но в этом случае, похоже, ничего не работает.Я в основном пытаюсь воспроизвести сохранение функции SAS в HIVE.Любая помощь приветствуется.
Примечание. Заказ осуществляется с использованием столбца id.