Может ли хранимая процедура вызываться из функции в Snowflake

#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 на основе ваших правил.

Можете ли вы разработать базовый пример запроса и что вы пытаетесь сделать?