2024年5月28日 --- ML 関数リリースノート

ML 関数の結果を格納するためのよりシンプルな SQL

SELECT ステートメントの FROM 句で Forecast Detect Anomalies ML 関数を直接呼び出せるようになりました。FROM 句で <モデル名>!DETECT_ANOMALIES<モデル名>!FORECAST<モデル名>!SHOW_EVALUATION_METRICS のようなメソッドを呼び出すことができます。

このテクニックを使えば、結果をテーブルに保存する SQL ステートメントを簡略化できます。たとえば、これらの結果を含むテーブルを作成するのに RESULT_SCAN 関数で SQLID Snowflakeスクリプト変数を使用するのではなく、

BEGIN
  CALL model!FORECAST(FORECASTING_PERIODS => 7);
  LET x := SQLID;
  CREATE TABLE my_forecasts AS SELECT * FROM TABLE(RESULT_SCAN(:x));
END;
SELECT * FROM my_forecasts;
Copy

メソッドを呼び出した結果から直接選択するクエリを使用することができます。

CREATE TABLE my_forecasts AS
  SELECT * FROM TABLE(model!forecast(forecasting_periods => 7));
Copy

上述の例のように、メソッドを呼び出すときは CALL コマンドを省略します。代わりに、 TABLE キーワードを前に付けて、呼び出しを括弧で囲みます。

詳細については、 表形式データを返す SQL クラスインスタンスメソッドからの列の選択 をご参照ください。

さらに、 先にお知らせし、 上述の例でも示したように、 TABLE キーワード(SYSTEM$REFERENCE を呼び出すのではなく)を使って、メソッドに渡す参照を作成することができます。