#snowflake-cloud-data-platform
#snowflake-cloud-data-platform
Вопрос:
У нас есть требование, согласно которому результат, возвращаемый оператором select, должен быть динамическим на основе выполненного запроса select. Итак, мы склоняемся к решению вызова хранимой процедуры внутри функции, которая будет использоваться в операторе select .
Вопрос: можем ли мы вызвать хранимую процедуру из функции в Snowflake? И каким будет синтаксис?
Пожалуйста, поделитесь.
Комментарии:
1. Вы не можете вызвать хранимую процедуру из UDF. Обратитесь к примечаниям по использованию, особенно к этой части «потому что вызов не может быть частью выражения»: docs.snowflake.com/en/sql-reference/sql/call.html#usage-notes . Вы можете использовать определяемую пользователем табличную функцию (UDTF) в зависимости от того, что вам нужно сделать. Можете ли вы уточнить?
Ответ №1:
Я делал похожие вещи с этим. Хотя вы не можете вызвать хранимую процедуру из UDF, вы можете вызвать хранимую процедуру из другой хранимой процедуры.
Также возможно вызвать хранимую процедуру с задачей и передать возвращаемое значение хранимой процедуры задаче, чтобы затем передать его другому вызову хранимой процедуры.
Из вашего вступительного комментария вы могли бы решить свою проблему, используя оператор if в javascript для выполнения оператора select на основе ваших правил.
Можете ли вы разработать базовый пример запроса и что вы пытаетесь сделать?