私は、MacOS 10.12.6でPostgreSQLバージョン10を使用しており、HugSQLにアクセス可能なクエリでカスタムplpgsql関数を使用したいと考えています。次ansatzが正常に動作しますHugSQLでカスタム関数を使用する
-- :name do-something! :! :1
CREATE OR REPLACE FUNCTION helper()
... (function body of helper)
LANGUAGE plpgsql;
INSERT INTO SomeTable (someColumn) VALUES (helper());
HugSQL私は複数行のSQL文を記述することができますし、私はhelper()
の関数定義を含めることができますので、これは動作します。
しかし、実際に効率的かどうかは今、クエリdo-something!
が実行されるたびに関数を再定義しているからです。関数定義を入力ファイルの先頭に置こうとしましたが、コンパイラの例外が発生しました。
質問:これにはどのような方法が最適ですか?