вложенная таблица props (Nested) с полями name и value. Для каждой записи в основной таблице - 100-150 записей во вложенной.
Чтобы достать сейчас конкретное значение для конкретного props, если оно есть, я костылю страшную функцию
arrayFirst(x -> (x != ''), arrayMap((n, v) -> caseWithoutExpression(n = 'property_name', v, ''), props.name, props.value))
Вопрос, нет ли уже готового функционала для такого запроса, и можно ли сделать свою функцию на основе запроса?
Array Join в данном случае не подходит, ибо мне может понадобится достать одновременно несколько полей или я могу потерять строку если у неё нет ни одной записи в nested-таблице
Можно обойтись только arrayFirst с двумя аргументами? Можно объявить выражение в начале запроса с помощью секции WITH.
Обсуждают сегодня