

 Amazon Redshift は、パッチ 198 以降、新しい Python UDF の作成をサポートしなくなります。既存の Python UDF は、2026 年 6 月 30 日まで引き続き機能します。詳細については、[ブログ記事](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)を参照してください。

# STL\_UNIQUE
<a name="r_STL_UNIQUE"></a>

SELECT リストで DISTINCT 関数が使用されているとき、あるいは UNION または INTERSECT クエリから重複が除去されるときに発生する実行ステップを分析します。

STL\_UNIQUE はすべてのユーザーに表示されます。スーパーユーザーはすべての行を表示できますが、通常のユーザーは自分のデータのみを表示できます。詳細については、「[システムテーブルとビューのデータの可視性](cm_chap_system-tables.md#c_visibility-of-data)」を参照してください。

**注記**  
STL\_UNIQUE には、メインのプロビジョニング済みクラスターで実行されるクエリのみが含まれます。同時実行スケーリングクラスターやサーバーレス名前空間で実行されるクエリは含まれていません。メインクラスターと、同時実行スケーリングクラスターやサーバーレス名前空間の両方で実行されるクエリの説明プランにアクセスするには、SYS モニタリングビュー [SYS\_QUERY\_DETAIL](SYS_QUERY_DETAIL.md) を使用することをお勧めします。SYS モニタリングビューのデータは、使いやすく理解しやすいようにフォーマットされます。

## テーブルの列
<a name="r_STL_UNIQUE-table-columns"></a>


| 列名  | データ型  | 説明  | 
| --- | --- | --- | 
| 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 | 処理された合計行数。 | 
| type | character(6) | ステップの種類。有効な値は次のとおりです。[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/redshift/latest/dg/r_STL_UNIQUE.html)  | 
| is\_diskbased | character(1) | true (t) の場合、クエリはディスクベースのオペレーションとして実行されました。false (f) の場合、クエリはメモリ内で実行されました。 | 
| slots | integer | ハッシュバケットの総数。 | 
| workmem | bigint | ステップに割り当てられた作業メモリの総バイト数。 | 
| max\_buffers\_used | bigint | ディスクに書き込まれる前にハッシュテーブル内で使用されるバッファの最大数。 | 
| サイズ変更 | integer | この情報は、内部使用に限定されています。 | 
| occupied | integer | この情報は、内部使用に限定されています。 | 
| フラッシュ可能 | integer | この情報は、内部使用に限定されています。 | 
| used\_unique\_prefetching | character(1) | この情報は、内部使用に限定されています。 | 
| bytes | biginit | ステップの総出力行のバイト数。 | 

## サンプルクエリ
<a name="r_STL_UNIQUE-sample-queries"></a>

以下のクエリを実行するとします。

```
select distinct eventname
from event order by 1;
```

次の例は、上のクエリの ID が 6313 であるという前提で、セグメント 0 および 1 内の各スライスにおけるそれぞれのステップで作成される行の数を表します。

```
select query, slice, segment, step, datediff(msec, starttime, endtime) as msec, tasknum, rows 
from stl_unique where query = 6313
order by query desc, slice, segment, step;
```

```
 query | slice | segment | step | msec | tasknum | rows
-------+-------+---------+------+------+---------+------
  6313 |     0 |       0 |    2 |    0 |      22 |  550
  6313 |     0 |       1 |    1 |  256 |      20 |  145
  6313 |     1 |       0 |    2 |    1 |      23 |  540
  6313 |     1 |       1 |    1 |   42 |      21 |  127
  6313 |     2 |       0 |    2 |    1 |      22 |  540
  6313 |     2 |       1 |    1 |  255 |      20 |  158
  6313 |     3 |       0 |    2 |    1 |      23 |  542
  6313 |     3 |       1 |    1 |   38 |      21 |  146
(8 rows)
```