DYNAMIC_TABLES関数: 返される最大行数の新しいデフォルト値

注意

この動作変更は2025_02バンドルになります。

バンドルの現在のステータスについては、 バンドル履歴 をご参照ください。

DYNAMIC_TABLES 関数は次のように動作します。

変更前:

デフォルトでは、RESULT_LIMITが指定されない場合、関数はすべての行をソートされていない順序で返します。例えば、アカウントに10,000の動的テーブルがある場合、関数は10,000行を返します。

変更後:

デフォルトでは、この関数は100行を返し、RESULT_LIMIT引数で特に指定していない限り、結果は動的テーブルの最後に完了した更新状態順に以下の通りソートされます。

  1. FAILED

  2. UPSTREAM_FAILED

  3. SKIPPED

  4. SUCCEEDED

  5. CANCELED

別の順序でソートするには、RESULT_LIMITの値(例、署名された整数の最大値)を十分に大きな値で指定する必要があります。RESULT_LIMITがアカウント内の動的テーブルの総数を超えている限り、ORDER BY句を使用して結果を並べ替えることができます。

結果にフィルターを適用するには、すべての動的テーブルにフィルターが適用されるように、ここでもRESULT_LIMITの値に十分に大きな値を指定してください。

:

次の例は、 name の異なる順序でソートし、100行を返します。

SELECT * FROM TABLE(INFORMATION_SCHEMA.DYNAMIC_TABLES(result_limit => <max_value>)) ORDER BY name ASC LIMIT 100 ;
Copy

次の例は、 name の異なる順序でソートし、すべての行を返します。

SELECT * FROM TABLE(INFORMATION_SCHEMA.DYNAMIC_TABLES(result_limit => <max_value>)) ORDER BY name ASC ;
Copy

以下の例では、ターゲットラグが1分のすべての動的テーブルをフィルターし、デフォルトのソートを使用し、すべての行を返します。

SELECT * FROM TABLE(INFORMATION_SCHEMA.DYNAMIC_TABLES(result_limit => <max_value>)) WHERE TARGET_LAG_SEC = 60 ;
Copy

Ref: 1928