У меня есть ORACLE SQL, который имеет в коде LAG (...) IGNORE NULLS OVER (ORDER BY ...), но получаю сообщение об ошибке при попытке использовать его в SQL для MariaDB.Кто-нибудь знает, что похожая функция для MariaDB?
ОБНОВЛЕНИЕ:
Реальная база данных, из которой я извлекаю, не имеет правильных номеров шагов для шагов REWORK, поэтому необходимо связать step_no споследняя строка, которая имеет MAIN для значения шага.Как и в примере с таблицей, столбец required_results имеет значение step_no 102 для всех строк REWORK, которое относится к последней строке MAIN с 10/10/2018 01:00:03 demand_ts.
Пример кода:
WITH testTable AS (
SELECT '10/9/2018 17:22:54' AS claim_ts, 'MAIN' AS step, '100' AS step_no, '100' as desired_results UNION ALL
SELECT '10/9/2018 20:39:32', 'MAIN', '101', '101' UNION ALL
SELECT '10/10/2018 01:00:03', 'MAIN', '102', '102' UNION ALL
SELECT '10/10/2018 01:01:44', 'REWORK', '5', '102' UNION ALL
SELECT '10/11/2018 05:55:20', 'REWORK', NULL, '102' UNION ALL
SELECT '10/11/2018 13:12:11', 'REWORK', '5', '102' UNION ALL
SELECT '10/11/2018 16:45:00', 'REWORK', NULL, '102' UNION ALL
SELECT '10/12/2018 03:08:25', 'MAIN', '103', '103'
)
SELECT
claim_ts,
step,
step_no,
desired_results
ОТ testTable
Пример результатов.
dbfiddle с кодом