次の方法で共有


reflect 関数

適用対象: Databricks Runtime 11.3 LTS 以降

リフレクションを使用してメソッドを呼び出します。

メソッドは例外を返す場合があります。 代わりに NULL を返すには、try_reflect を使用します。

構文

reflect(class, method [, arg1] [, ...])

引数

  • class: Java クラスを指定する STRING リテラル。
  • method: Java メソッドを指定する STRING リテラル。
  • argN: 選択したメソッドに適切な型を持つ式。

返品

STRING です。

> SELECT reflect('java.util.UUID', 'randomUUID');
 c33fb387-8500-4bfa-81d2-6e0e3e930df2

> SELECT reflect('java.util.UUID', 'fromString', 'a5cf6c42-0c85-418f-af6c-3e4e5b1328f2');
 A5cf6c42-0c85-418f-af6c-3e4e5b1328f2

> SELECT reflect('java.lang.Integer', 'divideUnsigned',10,0);
 Error

> SELECT try_reflect('java.lang.Integer', 'divideUnsigned',10,0);
 NULL