Amazon Redshift は、2025 年 11 月 1 日以降、新しい Python UDF の作成をサポートしなくなります。Python UDF を使用する場合は、その日付より前に UDF を作成してください。既存の Python UDF は引き続き通常どおり機能します。詳細については、ブログ記事
STL_LIMIT
SELECT クエリ内で LIMIT 句が使用されるときに発生する実行ステップを分析します。
STL_LIMIT はすべてのユーザーに表示されます。スーパーユーザーはすべての行を表示できますが、通常のユーザーは自分のデータのみを表示できます。詳細については、「システムテーブルとビューのデータの可視性」を参照してください。
注記
STL_LIMIT には、メインのプロビジョニング済みクラスターで実行されるクエリのみが含まれます。同時実行スケーリングクラスターやサーバーレス名前空間で実行されるクエリは含まれていません。メインクラスターと、同時実行スケーリングクラスターやサーバーレス名前空間の両方で実行されるクエリの説明プランにアクセスするには、SYS モニタリングビュー SYS_QUERY_DETAIL を使用することをお勧めします。SYS モニタリングビューのデータは、使いやすく理解しやすいようにフォーマットされます。
テーブルの列
| 列名 | データ型 | 説明 |
|---|---|---|
| userid | integer | エントリを生成したユーザーの ID。 |
| query | integer | クエリ ID。クエリ列は、他の各種システムテーブルおよびビューを結合するために使用できます。 |
| slice | integer | クエリが実行されていたスライスを識別する番号。 |
| segment | integer | クエリセグメントを識別する番号。 |
| step | integer | 実行されたクエリステップ。 |
| starttime | timestamp | UTC で表されたクエリの開始時間。合計時間にはキューイングと実行が含まれます。秒の小数部は 6 桁の精度で表されます。例: 2009-06-12 11:29:19.131358。 |
| endtime | timestamp | クエリの実行が完了した時刻 (UTC)。合計時間にはキューイングと実行が含まれます。秒の小数部は 6 桁の精度で表されます。例: 2009-06-12 11:29:19.131358。 |
| tasknum | integer | ステップ実行に割り当てられたクエリタスク処理の数。 |
| rows | bigint | 処理された合計行数。 |
| checksum | bigint | この情報は、内部使用に限定されています。 |
サンプルクエリ
STL_LIMIT に行を作成するために、この例ではまず、LIMIT 句を使用する次のクエリを VENUE テーブルに対して実行します。
select * from venue order by 1 limit 10;
venueid | venuename | venuecity | venuestate | venueseats ---------+----------------------------+-----------------+------------+------------ 1 | Toyota Park | Bridgeview | IL | 0 2 | Columbus Crew Stadium | Columbus | OH | 0 3 | RFK Stadium | Washington | DC | 0 4 | CommunityAmerica Ballpark | Kansas City | KS | 0 5 | Gillette Stadium | Foxborough | MA | 68756 6 | New York Giants Stadium | East Rutherford | NJ | 80242 7 | BMO Field | Toronto | ON | 0 8 | The Home Depot Center | Carson | CA | 0 9 | Dick's Sporting Goods Park | Commerce City | CO | 0 10 | Pizza Hut Park | Frisco | TX | 0 (10 rows)
次に、VENUE テーブルに対して最後に実行したクエリのクエリ ID を取得するために、次のクエリを実行します。
select max(query) from stl_query;
max -------- 127128 (1 row)
オプションで次のクエリを実行することにより、このクエリ ID が実行済みの LIMIT クエリに対応していることを確認できます。
select query, trim(querytxt) from stl_query where query=127128;
query | btrim --------+------------------------------------------ 127128 | select * from venue order by 1 limit 10; (1 row)
最後に、次のクエリを実行して、LIMIT クエリに関する情報を STL_LIMIT テーブルから返します。
select slice, segment, step, starttime, endtime, tasknum from stl_limit where query=127128 order by starttime, endtime;
slice | segment | step | starttime | endtime | tasknum -------+---------+------+----------------------------+----------------------------+--------- 1 | 1 | 3 | 2013-09-06 22:56:43.608114 | 2013-09-06 22:56:43.609383 | 15 0 | 1 | 3 | 2013-09-06 22:56:43.608708 | 2013-09-06 22:56:43.609521 | 15 10000 | 2 | 2 | 2013-09-06 22:56:43.612506 | 2013-09-06 22:56:43.612668 | 0 (3 rows)