Db2 12のテーブルを説明する

Db2 12のテーブルを説明する

  • メインフレーム
6分で読めます 更新日 Apr 1, 2019

ポイント: Db2 12 のテーブル説明では、PLAN_TABLE の機能を概説しており、クエリアクセスパスに関する洞察を提供し、効率的な SQL 実行のために最適化を助けます。これは、Db2 の SQL ステートメントプロセスを理解するための重要なリファレンスとして機能します。

  • Db2 クエリパフォーマンスにおける PLAN_TABLE の役割の詳細。
  • アクセスパスの最適化の重要性を強調。

PLAN_TABLE

クエリのアクセスパスに関する情報を含む、説明されたかヒントが付けられたクエリに関する情報を含みます。

カラム名 データ型 説明
QUERYNO INTEGER 説明されているステートメントを識別するための番号
QBLOCKNO SMALLINT クエリ内の各クエリブロックを識別する番号。番号は特に順序がなく、連続しているわけではない
APPLNAME VARCHAR(24) 行のアプリケーションプランの名前
PROGNAME VARCHAR(128) 説明されているステートメントを含むプログラムまたはパッケージの名前
PLANNO SMALLINT QBLOCKNOで示されたクエリが処理されたステップの数。ステップが実行された順序を示します。
METHOD SMALLINT

ステップに使用される結合メソッド:

0 = 最初にアクセスされたテーブル、以前のテーブルの継続、または使用されていない

1 = ネストされたループ結合。現在の複合テーブルの各行に対して、新しいテーブルの一致する行が見つかり、結合されます。

2 = マージスキャン結合。現在の複合テーブルと新しいテーブルは、結合列の順序でスキャンされ、一致する行が結合されます。

3 = ORDER BY、GROUP BY、SELECT DISTINCT、UNION、量化述語、またはIN述語に必要なソート。新しいテーブルにはアクセスしません。

CREATOR VARCHAR(128) このステップでアクセスされた新しいテーブルの作成者; METHODが3の場合は空白
TNAME VARCHAR(128)

テーブル、マテリアライズドクエリテーブル、作成または宣言された一時テーブル、マテリアライズドビュー、またはマテリアライズドテーブル式の名前。METHODが3の場合は空白です。また、DSNWFQB(qblockno)の形式のテーブル名を含むこともできます。DSNWFQB(qblockno)は、UNION ALL、INTERSECT ALL、EXCEPT ALL、またはマテリアライズされた外部結合の即時結果を表すために使用されます。ビューがマージされると、ビューの名前は表示されません。

DSN_DIM_TBLX(qblockno)は、スタージョイン次元テーブルの作業ファイルを表すために使用されます。

DSB_SPIX_TBLX(qblockno)は、横参照のためのスパースインデックスに使用されます。

TABNO SMALLINT IBM専用。
ACCESSTYPE CHAR(2)

新しいテーブルへのアクセス方法:

DI = 複数のDOCIDリストの交差により最終的なDOCIDリストを返します。

DU = 複数のDOCIDリストの和により最終的なDOCIDリストを返します。

DX = ACCESSNAMEで指定されたインデックスのXMLインデックススキャンによってDOCIDリストを返します。

E = 行変更タイムスタンプ列を使用した直接行。

H = ハッシュアクセス。オーバーフロー条件が発生した場合、ACCESSCREATORとACCESSNAMEで特定されたハッシュオーバーフローインデックスが使用されます。

HN = IN述語を使用したハッシュアクセス、またはDB2が生成したIN述語を使用します。ハッシュオーバーフロー条件が発生した場合、ACCESSCREATORおよびACCESSNAMEで特定されたハッシュオーバーフローインデックスが使用されます。

IN = 一致する述語がIN述語を含むときにインデックススキャンを行い、INリストがインメモリテーブルを介してアクセスされます。

I = インデックス(ACCESSCREATORとACCESSNAMEで特定)。

I1 = 一回取得インデックススキャン

M = 複数のインデックススキャン(MX、MI、MH、またはMUに続く)。

MH = ACCESSNAMEで指定されたハッシュオーバーフローインデックス

MX = ACCESSNAMEで指定されたインデックスのインデックススキャン。アクセス方法MXがアクセス方法DX、DI、またはDUに続く場合、テーブルはDX、DI、またはDUによって返されたDOCIDリストを使用してDOCIDインデックスによってアクセスされます。

MI = 複数のインデックスの交差

MU = 複数のインデックスの和

N = 一致する述語がINキーワードを含む場合、またはDB2がINキーワードを使用してクエリを書き換えるときにインデックススキャンを行います。

NR = 範囲リストアクセス。

O = サブクエリの結果としての作業ファイルスキャン。

P = 動的ペアワイズインデックススキャン

R = テーブルスペーススキャン。

RW = マテリアライズされたユーザー定義テーブル関数の作業ファイルスキャン

V = SELECT内のINSERT文のためのバッファ。

空白 = 現在の行に適用されません。

MATCHCOLS SMALLINT ACCESSTYPE I, I1, N, NR, MX, または DX の場合、インデックススキャンで使用されるインデックスキーの数; それ以外は0。
ACCESSCREATOR VARCHAR(128) ACCESSTYPE I, I1, N, NR, MX、または DX の場合、インデックスの作成者
ACCESSNAME VARCHAR(128) ACCESSTYPE I, I1, H, MH, N, NR, MX、または DX の場合、インデックスの名前。
INDEXONLY CHAR(1) インデックスだけへのアクセスでステップを実行できるか、またはデータにもアクセスする必要があるか。Y = はい; N = いいえ
SORTN_UNIQ CHAR(1)

新しいテーブルは重複行を削除するためにソートされています。

Y=はい; N=いいえ

SORTN_JOIN CHAR(1) 新しいテーブルは結合方法2または4のためにソートされています。Y = はい; N = いいえ
SORTN_ORDERBY CHAR(1)

新しいテーブルはORDER BYのためにソートされています。Y = はい; N =

いいえ

SORTN_GROUPBY CHAR(1)

新しいテーブルはGROUP BYのためにソートされています。Y = はい; N =

いいえ

SORTC_UNIQ CHAR(1) 複合テーブルは重複行を削除するためにソートされます。Y = はい; N = いいえ。
SORTC_JOIN CHAR(1) 複合テーブルは結合方法1、2、または4のためにソートされます。Y = はい; N = いいえ。
SORTC_ORDERBY CHAR(1) 複合テーブルはORDER BY句または定量化された述語のためにソートされます。Y = はい; N = いいえ。
SORTC_GROUPBY CHAR(1) 複合テーブルはGROUP BY句のためにソートされます。Y = はい; N = いいえ。
TSLOCKMODE CHAR(3)

新しいテーブルまたはそのテーブルスペースやテーブルスペースパーティションに取得されるロックのモードの指示です。バインド時に分離が決定できる場合、値は次の通りです:

IS = 意図共有ロック

IX = 意図排他ロック

S = 共有ロック

U = 更新ロック

X = 排他ロック

SIX = 意図排他ロックを伴う共有

N = UR分離; ロックなし

バインド時に分離が決定できない場合、実行時に分離によって決定されるロックモードは次の値で示されます:

NS = UR分離の場合、ロックなし; CS、RS、またはRRの場合、Sロック

NIS = UR分離の場合、ロックなし; CS、RS、またはRRの場合、ISロック

NSS = UR分離の場合、ロックなし; CSまたはRSの場合、ISロック; RRの場合、Sロック

SS = UR、CSまたはRS分離の場合、ISロック; RRの場合、Sロック

RR、Sロック

この列のデータは右揃えです。例えば、IXは空白の後にǀの後にXが表示されます。列に空白が含まれている場合、ロックは取得されません。

ACCESSTYPE列のアクセス方法がDX、DI、またはDUの場合、XMLインデックスページでロックは取得されず、新しいベーステーブルデータページや行、XMLテーブルおよび対応するテーブルスペースでもロックは取得されません。この場合、TSLOCKMODEの値は空白です。

TIMESTAMP CHAR(16) 非推奨、EXPLAIN_TIMEを使用してください。
REMARKS (VARCHAR762) 762文字以内の任意の文字列を挿入できます。
PREFETCH CHAR(1)

データページが事前にプリフェッチされるかどうか:

D = オプティマイザが動的プリフェッチを期待

S = 完全な順次プリフェッチ

L = ページリストを介したプリフェッチ

U = ソートされていないRIDリストを使用したリストプリフェッチ

空白 = バインド時に不明またはプリフェッチなし

COLUMN_FN_EVAL CHAR(1)

SQL集約関数が評価されるとき:

R = テーブルまたはインデックスからデータが読み取られている間

S = GROUP BY句を満たすためにソートを実行している間

X = テーブルまたはインデックスからデータが読み取られている間、OFFSET句が指定された集約関数の場合

Y = ソートを実行している間、OFFSET句が指定された集約関数の場合。

空白 = データ取得後、すべてのソート後

MIXOPSEQ SMALLINT

複数のインデックス操作のステップのシーケンス番号:

1, 2,...n = 複数のインデックス手続きのステップの場合(ACCESSTYPEがMX、MI、MU、DX、DI、またはDU)、SQL文のOR述語のシーケンス番号(ACCESSTYPEがNR)

0 = その他の行の場合

VERSION VARCHAR(122) パッケージのバージョン識別子
COLLID VARCHAR(128)

コレクションID:

DSNDYNAMICSQLCACHE:行は動的文キャッシュから発生

DSNEXPLAINMODEYES:行はCURRENT EXPLAIN MODE特別レジスタにYESを指定するアプリケーションから発生

DSNEXPLAINMODEEXPLAIN:行はCURRENT EXPLAIN MODE特別レジスタにEXPLAINを指定するアプリケーションから発生

SQL文がコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーに埋め込まれている場合、列はコンパイルされたSQL関数のスキーマ、ネイティブSQLプロシージャ、または高度なトリガーです

ACCESS_DEGREE SMALLINT クエリによってアクティブ化された並列タスクまたは操作の数。バインド時に決定され、実行時の実際の数は異なる場合があります
ACCESS_PGROUP_ID SMALLINT 新しいテーブルにアクセスするための並列グループの識別子
JOIN_DEGREE SMALLINT 新しいテーブルとの結合に使用される並列操作またはタスクの数
JOIN_PGROUP_ID SMALLINT 新しいテーブルとの結合に使用される合成テーブルの並列グループの識別子
SORTC_PGROUP_ID SMALLINT 合成テーブルの並列ソート用の並列グループ識別子
SORTN_PGROUP_ID SMALLINT 新しいテーブルの並列ソート用の並列グループ識別子
PARALLELISM_MODE CHAR(1) 並列性のモード。 C = CP並列性
MERGE_JOIN_COLS SMALLINT マージスキャン結合中に結合された列の数
CORRELATION_NAME VARCHAR(128) ステートメントで指定されたテーブルまたはビューの相関名
PAGE_RANGE CHAR(1) ページ範囲スクリーニングが使用されている場合。 Y = はい; 空白 = いいえ
JOIN_TYPE CHAR(1)

外部結合のタイプ:

F = 完全外部結合

L = 左外部結合

P = ペアワイズ結合

S = スター結合

空白 = 内部結合または結合なし

RIGHT OUTER JOINはLEFT OUTER JOINに変換され、JOIN_TYPEにはLが含まれます

GROUP_MEMBER VARCHAR(24) EXPLAINを実行したDB2のメンバー名
IBM_SERVICE_DATA VARCHAR(254) IBM専用
WHEN_OPTIMIZE CHAR(1)

アクセスパスが決定されたとき:

空白 = バインド時に、ホスト変数、パラメータマーカー、または特別レジスタに対してデフォルトフィルタファクターを使用; ただし、ステートメントは、ホスト変数、パラメータマーカー、または特別レジスタの入力変数値を使用してランタイムで再最適化されます。

再最適化を行うには、バインドオプションREOPT(ALWAYS)、REOPT(ONCE)、またはREOPT(AUTO)を指定する必要があります

R = ランタイムで、ホスト変数、パラメータマーカー、または特別レジスタのための入力変数を使用して。

この操作が行われるためには、バインドオプションREOPT(ALWAYS)、REOPT(ONCE)、またはREOPT(AUTO)を指定する必要があります。

QBLOCK_TYPE CHAR(6)

各クエリブロックについて、実行されるSQL操作のタイプ。最外部のクエリのため、ステートメントタイプを識別します。

SELECT = SELECT

INSERT = INSERT

UPDATE = UPDATE

MERGE = MERGE

DELETE = DELETE

SELUPD = FOR UPDATE OFを伴うSELECT

DELCUR = CURSORのCURRENT WHEREをDELETE

UPDCUR = CURSORのCURRENT WHEREをUPDATE

CORSUB = 相関サブクエリ

TRUNCA = TRUNCATE

NCOSUB = 非相関サブクエリ

TABLEX = テーブル式

TRIGGR = CREATE TRIGGERのWHEN句

UNION = UNION

UNIONA = UNION ALL

INTERS = INTERSECT

INTERA = INTERSECT ALL

EXCEPT = EXCEPT

EXCEPTA = EXCEPT ALL

OPTHINT VARCHAR(128) DB2の最適化ヒントとして行を識別するための文字列
HINT_USED VARCHAR(128)

APREUSE – APREUSEオプションがバインドまたはリバインド時に指定されたため、アクセスパスが正常に再利用された場合

‘opthint-value’ – PLAN_TABLEアクセスパスのヒントが使用されたとき

opthint-valueは、使用されたヒントのOPTHINT列の値です

SYSQUERYPLAN query-id ステートメントレベルのアクセスパスヒントが使用されたとき。query-idは、ヒントのためのSYSQUERYPLANカタログテーブルのQUERYID列の値です

SYSQUERYSEL query-id 選択性のオーバーライドが使用された場合。query-idは、ヒントのためのSYSQUERYSELカタログテーブル行のQUERYID列の値です。

EXPLAIN PACKAGE: COPY copy-id – 行がEXPLAIN PACKAGEステートメントの結果である場合。

copy-idは次のいずれかの値です:

0 現在のコピー

1 前のコピー

2 元のコピー

PRIMARY_ACCESSTYPE CHAR(1)

直接行アクセスが最初に試みられるかどうかを示します:

D = DB2は直接行アクセスを試みます。ランタイムで直接行アクセスを使用できない場合、PLAN_TABLEのACCESSTYPE列に記載されたアクセスパスを使用します。

P = DB2はデータパーティションされたセカンダリインデックスと部分レベル操作を使用してデータにアクセスしました。

S = DB2は横のテーブル参照のためにスパースダイレクトインデックスアクセスを使用しました。

T = 基本テーブルまたは結果ファイルが作業ファイルにマテリアライズされ、作業ファイルがスパースインデックスアクセスを介してアクセスされます。基本テーブルが関与している場合、ACCESSTYPEは基本テーブルがどのようにアクセスされるかを示します。

空白 = DB2は直接行アクセスを試みません。ACCESSTYPE列の値は、テーブルへのアクセス方法に関する情報を提供します。

PARENT_QBLOCK SMALLINT 親クエリのQBLOKNOを示す番号
TABLE_TYPE CHAR(1)

新しいテーブルのタイプ:

B = INSERTからのSELECT、UPDATEからのSELECT、MERGEからのSELECT、またはDELETEからのSELECTのためのバッファ。

C = 共通テーブル式

F = テーブル関数

I = 新しいテーブルはIN-LIST述語から生成されます。IN-LIST述語が一致する述語として選択される場合、メモリ内テーブルとしてアクセスされます。

M = マテリアライズドクエリテーブル

Q = 一時的な中間結果テーブル(マテリアライズされていない)。ビューまたはネストされたテーブル式の名前について、Qの値はマテリアライズが仮想であり、実際ではないことを示します。

マテリアライズは、ビューまたはネストされたテーブル式の定義が分配されていないUNION ALLを含む場合、仮想であることができます。

R = 再帰的共通テーブル式

S = サブクエリ(相関または非相関)

T = テーブル

W = 作業ファイル

クエリがGROUP BY、ORDER BY、またはDISTINCTを使用している場合、カラムの値はnullです。これには暗黙のソートが必要です。

TABLE_ENCODE CHAR(1)

テーブルのエンコーディングスキーム。テーブルに単一のCCSIDが設定されている場合、可能な値は:

A = ASCII

E = EBCDIC

U = UNICODE

M = テーブルには複数のCCSIDセットが含まれています。

TABLE_SCCSID SMALLINT テーブルのSBCS CCSID値。TABLE_ENCODEがMの場合、値は0です。
TABLE_MCCSID SMALLINT テーブルの混合CCSID値。TABLE_ENCODEがMの場合、値は0です。アプリケーションデフォルトモジュールのMIXED=NOの場合、値は-2です。
ROUTINE_ID INTEGER IBM専用
CTREF SMALLINT 参照されたテーブルが共通テーブル式である場合、値は最上位のクエリブロック番号です
STMTTOKEN VARCHAR(240) ユーザー指定のステートメントトークン
PARENT_PLANNO SMALLINT 相関サブクエリが関与する親クエリブロックのプラン番号に対応します。非相関サブクエリの場合、サブクエリの作業ファイルを表す親クエリブロックのプラン番号に対応します。
BIND_EXPLAIN_ONLY CHAR(1) EXPLAIN(ONLY)オプションでBINDコマンドによって行が挿入されたかどうかを識別します
SECTNOI INTEGER ステートメントのセクション番号
EXPLAIN_TIME TIMESTAMP

EXPLAIN情報がキャプチャされた時間:

すべてのキャッシュされたステートメント: ステートメントがキャッシュに入ったとき

非キャッシュされた静的ステートメント: ステートメントがバインドされたとき

非キャッシュされた動的ステートメント: EXPLAINが実行されたとき

MERGC CHAR(1)

結合の前に複合テーブルが統合されるかどうかを示します。

Y = はい

N = いいえ

MERGN CHAR(1)

結合の前に新しいテーブルが統合されるか、データパーティションされた二次インデックス(DPSI)を使用したアクセスがマージ操作に関与したかどうかを示します。

Y = はい

N = いいえ

D = DPSIを介したアクセスがマージ操作に関与した

U = マージ操作に関与しなかったDPSIを介したアクセス

SCAN_DIRECTION CHAR(1)

インデックスアクセスの場合、インデックススキャンの方向:

F 前方

R 後方

空白 インデックススキャンは使用されません

EXPANSION_REASON CHAR(1) アーカイブテーブルまたは時間的テーブルを参照するステートメントのみに適用されます。それ以外の場合、列は空白です。
PER_STMT_ID BIGINT DB2カタログテーブルのSQLステートメントに対する永続的なステートメント識別子

DSN_COLDIST_TABLE

列分布テーブルは、DB2オプティマイザによって動的に取得される非均一な列グループ統計を含みます

列名 データ型 説明
QUERYNO INTEGER 説明されているステートメントを識別するために意図された番号
APPLNAME VARCHAR(128) 行のアプリケーションプランの名前
PROGNAME VARCHAR(128) 説明されているステートメントを含むプログラムまたはパッケージの名前
COLLID VARCHAR(128)

コレクションID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから発生

DSNEXPLAINMODEYES: 行はCURRENT EXPLAIN MODE特別レジスタに対してYESを指定するアプリケーションから発生

DSNEXPLAINMODEEXPLAIN: 行はCURRENT EXPLAIN MODE特別レジスタに対してEXPLAINを指定するアプリケーションから発生

SQLステートメントがコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーに埋め込まれている場合、この列はコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーのスキーマです。

GROUP_MEMBER VARCHAR(128) EXPLAINを実行したDB2サブシステムのメンバー名
SECTNOI INTEGER ステートメントのセクション番号
VERSION VARCHAR(122) パッケージのバージョン識別子
EXPLAIN_TIME TIMESTAMP EXPLAINタイムスタンプ
SCHEMA VARCHAR(128) 列を含むテーブルのスキーマ
TBNAME VARCHAR(128) 列を含むテーブルの名前
NAME VARCHAR(128) 列の名前
COLVALUE VARCHAR(2000) 列で頻繁に発生する値のデータを含む
TYPE CHAR(1)

統計のタイプ:

C = 基数

F = 頻繁な値

H = ヒストグラム

T = リアルタイムテーブル基数

L = リアルタイム列基数(ユニークインデックスのみ)

P = リアルタイムパーティション基数

CARDF FLOAT TYPE='C'の場合、列グループの異なる値の数。TYPE='H'の場合、QUANTILENO列の値で示された分位数における列グループの異なる値の数。TYPE='T'はCOLVALUEによって決定されるリアルタイム統計に関連する値。TYPE='L'はリアルタイム統計列に関連する値。QUANTILENOは列番号を含む。NAMEはパーティション番号を含む。
COLGROUPCOLNO VARCHAR(254) 統計に関連付けられた列のセットの識別子
NUMCOLUMNS SMALLINT 統計に関連付けられた列の数を識別します。
FREQUENCYF FLOAT COLVALUE列で指定された値を持つテーブル内の行の割合(100を掛けたとき)
QUANTILENO SMALLINT 全体の連続値範囲内の分位数の通常のシーケンス番号、低から高まで
LOWVALUE VARCHAR(2000) TYPE='H'の場合、QUANTILENO列の値によって示される分位数の下限
HIGHVALUE VARCHAR(2000) TYPE='H'の場合、QUANTILENO列の値によって示される分位数の上限
EXPANSION_REASON CHAR(2) アーカイブまたは時間的テーブルを参照するステートメントのみに適用される
PER_STMT_ID BIGINT カタログテーブル内のSQLステートメントの永続的なステートメント識別子

DSN_DETCOST_TABLE

クエリ内のミニプランの詳細コスト見積もりに関する情報を含みます

カラム名 データ型 説明
QUERYNO INTEGER 説明されるステートメントを識別するための番号
QBLOCKNO SMALLINT クエリ内の各クエリブロックを識別するための番号
PLANNO SMALLINT クエリブロック内の各ミニプランを識別するために使用される番号
APPLNAME VARCHAR(24) 行のアプリケーションプランの名前
PROGNAME VARCHAR(128) 説明されているステートメントを含むプログラムまたはパッケージの名前
OPENIO FLOAT(4) 非相関サブクエリのオープン時I/Oコストを計算する
OPENCPU FLOAT(4) 非相関サブクエリのオープン時CPUコストを計算する
OPENCOST FLOAT(4) 非相関サブクエリのオープン時総コストを計算する
ONECOMPROWS FLOAT(4) ローカル述語を適用した後に適合する行の数
IMFF FLOAT(4) 一致する述語のみのフィルターファクター
IMFFADJ FLOAT(4) 一致およびスクリーニングの述語のフィルタ係数
DMCOLS FLOAT(4) データマネージャーカラムの数
DMROWS FLOAT(4) 返されるデータマネージャー行の数(すべてのステージ1述語が適用された後)
RDSROW FLOAT(4) 返されるRDS行の数(すべてのステージ1述語が適用された後)
SNCOLS SMALLINT 新しいテーブルのソート入力としてのカラムの数
SNROWS FLOAT(4) 新しいテーブルのソート入力としての行の数
SNRECSZ INTEGER 新しいテーブルのレコードサイズ
SNPAGES FLOAT(4) 新しいテーブルのページサイズ
SNRUNS FLOAT(4) 新しいテーブルのソートのために生成されたランの数
SNMERGES FLOAT(4) ソート中に必要なマージの数
SNCCOLS FLOAT(4) 複合テーブルのソート入力としての列の数
SCROWS FLOAT(4) 複合テーブルのソート入力としての行の数
SCRECSZ INTEGER 複合テーブルのレコードサイズ
SCPAGES FLOAT(4) 複合テーブルのページサイズ
SCRUNS FLOAT(4) 複合テーブルのソート中に生成されたランの数
SCMERGES FLOAT(4) 複合テーブルのソート中に必要なマージの数
COMPCARD FLOAT(4) 総複合カーディナリティ
COMPCOST FLOAT(4) 総コスト
EXPLAIN_TIME TIMESTAMP EXPLAINタイムスタンプ
GROUP_MEMBER VARCHAR(24) EXPLAINを実行したDB2サブシステムのメンバー名
UNCERTAINTY FLOAT(4) 内部テーブルインデックスアクセスの不確実性ファクターを説明します
UNCERTAINTY_1T FLOAT(4) テーブルのONECOMPROWS列の不確実性ファクターを説明します
SECTNOI INTEGER ステートメントのセクション番号
COLLID VARCHAR(128) コレクションID
VERSION VARCHAR(128) パッケージのバージョン識別子
IXSCAN_SKIP_DUPS CHAR(1)

インデックススキャン中に重複インデックスキー値がスキップされるかどうか

‘Y’ 重複キー値はスキップされます

‘N’ 重複キー値はスキップされません

IXSCAN_SKIP_SCREEN CHAR(1)

インデックススクリーニング条件によって不資格化されたキー範囲がインデックススキャン中にスキップされるかどうか

‘Y’ 不資格化されたキー範囲はスキップされます

‘N’ キー範囲はスキップされません

EARLY_OUT CHAR(1)

最初の適合行の後にテーブルからフェッチを停止するかどうか

‘Y’ 内部フェッチは最初の適合行の後に停止します

‘N’ 内部フェッチは最初の適合行の後も続きます

空白 EXPLAIN情報は以前のリリースでキャプチャされました

EXPANSION_REASON CHAR(2) アーカイブテーブルまたはテンポラルテーブルを参照するステートメントにのみ適用されます。そうでなければ、列は空白です
BLOCK_FETCH CHAR(1) クエリにブロックフェッチが使用されたかどうか:(YまたはN)
PER_STMT_ID BIGINT DB2カタログ内のSQLステートメントの永続的な識別子

DSN_FILTER_TABLE

クエリ処理中に述語がどのように使用されるかに関する情報を含みます。

列名 データ型 説明
QUERYNO INTEGER 説明されているステートメントを識別するための番号。
QBLOCKNO SMALLINT クエリ内の各クエリブロックを識別するための番号
PLANNO SMALLINT クエリブロック内の各ミニプランを識別するために使用される番号
APPLNAME VARCHAR(24) 行のアプリケーションプランの名前
PROGNAME VARCHAR(128) 説明されているステートメントを含むプログラムまたはパッケージの名前
COLLID VARCHAR(128)

コレクションID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから発生します

DSNEXPLAINMODEYES: 行は、CURRENT EXPLAIN MODE特別レジスタに対してYESを指定するアプリケーションから発生します

DSNEXPLAINMODEEXPLAIN: 行は、CURRENT EXPLAIN MODE特別レジスタに対してEXPLAINを指定するアプリケーションから発生します。

SQLステートメントがコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーに埋め込まれている場合、この列はコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーのスキーマです。

ORDERNO INTEGER 評価のシーケンス番号。各ステージ内で適用される述語の順序
PREDNO INTEGER クエリ内の述語を識別するために使用される番号
STAGE CHAR(9)

述語が評価されるステージを示します

·        マッチング

·        スクリーニング

·        ページ範囲

·        ステージ1

·        ステージ2

EXPLAIN_TIME TIMESTAMP EXPLAINタイムスタンプ
GROUP_MEMBER VARCHAR(24) EXPLAINを実行したDB2サブシステムのメンバー名
SECTNOI INTEGER ステートメントのセクション番号
VERSION VARCHAR(122) パッケージのバージョン識別子
PUSHDOWN CHAR(1)

述語が評価のためにインデックスマネージャーまたはデータマネージャーのサブコンポーネントにプッシュダウンされるかどうか:

I = インデックスマネージャーのサブコンポーネントが述語を評価します

D = データマネージャーのサブコンポーネントが述語を評価します

空白 = 述語は評価のためにプッシュダウンされていません

EXPANSION_REASON CHAR(2) この列はアーカイブテーブルまたはテンポラルテーブルを参照するステートメントのみに適用されます。他のステートメントでは、この列は空白です。
PER_STMT_ID BIGINT DB2カタログ内のSQLステートメントの永続的なステートメント識別子

DSN_FUNCTION_TABLE

SQLステートメントで使用されるユーザー定義関数のコストに関する情報を含みます

Column name Data type Description
QUERYNO INTEGER 説明されているステートメントを識別するための番号
QBLOCKNO INTEGER クエリ内のクエリブロックの数
APPLNAME VARCHAR(24) 行のアプリケーションプランの名前
PROGNAME VARCHAR(128) 説明されている文を含むプログラムまたはパッケージの名前
COLLID VARCHAR(128)

コレクションID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから発生します

DSNEXPLAINMODEYES: 行はCURRENT EXPLAIN MODE特別レジスタに対してYESを指定するアプリケーションから発生します

DSNEXPLAINMODEEXPLAIN: 行はCURRENT EXPLAIN MODE特別レジスタに対してEXPLAINを指定するアプリケーションから発生します

SQL文がコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーに埋め込まれている場合、この列はコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーのスキーマです。

GROUP_MEMBER VARCHAR(24) EXPLAINを実行したDB2のメンバー名、または空白
EXPLAIN_TIME TIMESTAMP ステートメントが処理される時間
SCHEMA_NAME VARCHAR(128) 説明されたステートメントで呼び出された関数のスキーマ名
FUNCTION_NAME VARCHAR(128) 説明されたステートメントで呼び出された関数の名前
SPEC_FUNC_ID VARCHAR(128) 説明されたステートメントで呼び出された関数の特定名
FUNCTION_TYPE CHAR(2)

説明されたステートメントで呼び出される関数のタイプ:

CU = カラム関数

SU = スカラー関数

TU = テーブル関数

VIEW_CREATOR VARCHAR(128) FUNCTION_NAME列で指定された関数がビュー定義で参照されている場合、ビューの作成者。それ以外の場合は空白。
VIEW_NAME VARCHAR(128) FUNCTION_NAME列で指定された関数がビュー定義で参照されている場合、そのビューの名前。それ以外の場合は空白。
PATH VARCHAR(2048) 関数のスキーマ名を解決するために使用されるSQLパスの値
FUNCTION_TEXT VARCHAR(1500) 関数参照のテキスト(関数名とパラメーター)
FUNC_VERSION VARCHAR(122) 非インラインSQLスカラー関数のバージョンの場合、バージョン識別子が含まれます。
SECURE CHAR(1) ユーザー定義関数がセキュアかどうかを示します。
SECTNOI INTEGER 文のセクション番号
VERSION VARCHAR(122) パッケージのバージョン識別子
EXPANSION_REASON CHAR(2) 列は、アーカイブテーブルまたは時間的テーブルを参照する文のみに適用されます。それ以外の場合は空白。
PER_STMT_ID BIGINT DB2カタログのSQL文に対する永続的な文識別子

DSN_KEYTGTDIST_TABLE

オプティマイザによって動的に取得される非均一なインデックス式統計を含みます

列名 データ型 説明
QUERYNO INTEGER 説明されるステートメントを識別するための番号
APPLNAME VARCHAR(128) 行のアプリケーションプランの名前
PROGNAME VARCHAR(128) 説明されているステートメントを含むプログラムまたはパッケージの名前
COLLID VARCHAR(128)

コレクションID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから発生

DSNEXPLAINMODEYES: 行はCURRENT EXPLAIN MODE特別レジスタに対してYESを指定したアプリケーションから発生

DSNEXPLAINMODEEXPLAIN: 行はCURRENT EXPLAIN MODE特別レジスタに対してEXPLAINを指定したアプリケーションから発生

SQLステートメントがコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーに埋め込まれている場合、このカラムはコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーのスキーマです

GROUP_MEMBER VARCHAR(128) EXPLAINを実行したDB2サブシステムのメンバー名
SECTNOI INTEGER ステートメントのセクション番号
VERSION VARCHAR(122) パッケージのバージョン識別子
EXPLAIN_TIME TIMESTAMP EXPLAINのタイムスタンプ
IXSCHEMA VARCHAR(128) インデックスの修飾子
IXNAME VARCHAR(128) インデックスの名前
KEYSEQ VARCHAR(128) インデックス内のキーターゲットの数値位置
KEYVALUE VARCHAR(2000) 頻繁に発生する値のデータを含む
TYPE CHAR(1)

統計の種類:

C = カーディナリティ

F = 頻繁な値

H - ヒストグラム

L = リアルタイムインデックス統計

CARDF FLOAT TYPE='C'の場合、列グループの異なる値の数。TYPE='H'の場合、QUANTILENO列の値によって示される分位数における列グループの異なる値の数。TYPE='T'の場合、KEYVALUEによって決定されるリアルタイムインデックス統計に関連する値
KEYGROUPKEYNO VARCHAR(254) 統計に関連付けられているキーのセットを識別する値を含む。統計が複数のキーに関連付けられている場合、NUMKEYSの値と等しい次元を持つSMALLINTキー番号の配列を含む。統計が単一のキーにのみ関連付けられている場合、0を含む。
NUMKEYS SMALLINT 統計に関連付けられているキーの数
FREQUENCYF FLOAT KEYVALUE列で指定された値を持つ行のテーブル内の割合、数が100倍されるとき
QUANTILENO SMALLINT 全体の連続値範囲における分位数の通常のシーケンス番号、低から高へ。更新不可
LOWVALUE VARCHAR(2000) タイプが'H'の場合、このカラムのQUANTILENO列の値で示される分位数の下限を示します。TYPE列の値が'H'でない場合は使用されません。更新不可
HIGHVALUE VARCHAR(2000) タイプが'H'の場合、このカラムのQUANTILENO列の値で示される分位数の上限を示します。TYPE列の値が'H'でない場合は使用されません。このカラムは更新不可です。
EXPANSION_REASON CHAR(2) このカラムはアーカイブテーブルまたは時間的テーブルを参照するステートメントのみに適用されます。それ以外の場合、このカラムは空白です。
PER_STMT_ID BIGINT DB2カタログ内のSQLステートメントの永続的な識別子。

DSN_PGRANGE_TABLE

クエリ内のすべてのページ範囲スキャンに対する適格なパーティションに関する情報を含みます

Column name データ型 説明
QUERYNO INTEGER 説明されているステートメントを識別するための番号。
QBLOCKNO SMALLINT クエリ内の各クエリブロックを識別するための番号
TABNO SMALLINT テーブル番号
RANGE SMALLINT 現在のページ範囲のシーケンス番号
FIRSTPART SMALLINT 現在のページ範囲の開始パーティション
LASTPART SMALLINT 現在のページ範囲の終了パーティション
NUMPARTS SMALLINT 現在のページ範囲のパーティション数
EXPLAIN_TIME TIMESTAMP EXPLAIN タイムスタンプ
GROUP_MEMBER VARCHAR(24) EXPLAIN を実行した DB2 サブシステムのメンバー名
SECTNOI INTEGER ステートメントのセクション番号
APPLNAME VARCHAR(24) 行のアプリケーションプランの名前
PROGNAME VARCHAR(24) 説明されているステートメントを含むプログラムまたはパッケージの名前
COLLID VARCHAR(128)

コレクションID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから発生します

DSNEXPLAINMODEYES: 行はCURRENT EXPLAIN MODE特別レジスタに対してYESを指定するアプリケーションから発生します

DSNEXPLAINMODEEXPLAIN: 行はCURRENT EXPLAIN MODE特別レジスタに対してEXPLAINを指定するアプリケーションから発生します

SQLステートメントがコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーに埋め込まれている場合、この列はコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーのスキーマです

VERSION VARCHAR(122) パッケージのバージョン識別子
EXPANSION_REASON CHAR(2) 列はアーカイブテーブルまたは時間的テーブルを参照するステートメントのみに適用されます。それ以外の場合、列は空白です
PER_STMT_ID BIGINT DB2カタログ内のSQLステートメントの永続的なステートメント識別子

DSN_PGROUP_TABLE

クエリ内の並列グループに関する情報を含みます

列名 データ型 説明
QUERYNO INTEGER 説明されるステートメントを識別するための番号
QBLOCKNO SMALLINT クエリ内の各クエリブロックを識別するための番号
PLANNAME VARCHAR(24) アプリケーションプラン名
COLLID VARCHAR(24)

コレクション ID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから発生します

DSNEXPLAINMODEYES: 行はCURRENT EXPLAIN MODE特別レジスタに対してYESを指定するアプリケーションから発生します

DSNEXPLAINMODEEXPLAIN: 行はCURRENT EXPLAIN MODE特別レジスタに対してEXPLAINを指定するアプリケーションから発生します

SQL文がコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーに埋め込まれている場合、列はコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーのスキーマです

PROGNAME VARCHAR(128) プログラム名(アプリケーションのバインディング)またはパッケージ名(パッケージのバインディング)
EXPLAIN_TIME TIMESTAMP 説明タイムスタンプ
VERSION VARCHAR(122) パッケージのバージョン識別子
GROUPID SMALLINT 現在のクエリブロック内の並列グループ識別子
FIRSTPLAN SMALLINT この並列グループに関連付けられた最初の寄与ミニプランのプラン番号
LASTPLAN SMALLINT この並列グループに関連付けられた最後のミニプランのプラン番号
CPUCOST REAL この並列グループの推定 CPU コスト(ミリ秒)
IOCOST REAL この並列グループの推定総 I/O コスト(ミリ秒)
BESTTIME REAL この並列グループの各並列タスクの推定経過時間
DEGREE SMALLINT バインド時に決定されるこの並列グループの並列度
MODE CHAR(1)

並列モード:

I = I/O 並列処理

C = CPU 並列処理

N = 並列処理なし

REASON SMALLINT 並列処理モードをダウングレードする理由
LOCALCPU SMALLINT クエリを準備する際に現在オンラインの CPU の数
TOTALCPU SMALLINT SysplexのCPUの合計数
FIRSTBASE SMALLINT パーティショニングが実行されるテーブルのテーブル番号
LARGETS CHAR(1) このグループのテーブルスペースが大きい場合はY
PARTKIND CHAR(1)

パーティショニングタイプ:

L = 論理パーティショニング

P – 物理パーティショニング

GROUPTYPE CHAR(1) 並列グループでの操作を示します:テーブルアクセス、結合、またはソート(A、AJまたはAJS)
ORDER CHAR(1)

この並列グループの並べ替え要件:

N = 無秩序

T = 自然順序

K = キー順序

STYLE CHAR(4)

並列グループの入出力形式スタイル

RIRO = レコードの入力、レコードの出力

WIRO = ワークファイルの入力、レコードの出力

WIWO = ワークファイルの入力、ワークファイルの出力

RANGEKIND CHAR(1)

範囲の種類:

K = キー範囲

L = IN=リスト要素のパーティショニング

P = ページ範囲

R = レコード範囲パーティショニング

NKEYCOLS SMALLINT 興味のあるキー列の数 – この並列グループでキー操作に参加する列の数
LOWBOUND VARCHAR(40) 並列グループの下限
HIGHBOUND VARCHAR(40) 並列グループの上限
LOWKEY VARCHAR(40) キー範囲によってパーティショニングされた場合の範囲の下限キー
HIGHKEY VARCHAR(40) 範囲の高いキー(キー範囲でパーティション分けされている場合)
FIRSTPAGE CHAR(4) 範囲の最初のページ(ページ範囲でパーティション分けされている場合)
LASTPAGE CHAR(4) 範囲の最後のページ(ページ範囲でパーティション分けされている場合)
GROUP_MEMBER VARCHAR(24) EXPLAINが実行されたDB2のメンバー名
APPLNAME VARCHAR(24) アプリケーションプラン名
SECTNOI INTEGER ステートメントの選択番号
EXPANSION_REASON CHAR(2) 列はアーカイブテーブルまたは時間的テーブルを参照する文にのみ適用されます。それ以外の場合、列は空白です
PER_STMT_ID BIGINT DB2カタログ内のSQL文の永続的なステートメント識別子

DSN_PREDICAT_TABLE

クエリ内のすべての述語に関する情報を含みます

列名 データ型 説明
QUERYNO INTEGER 説明されている文を識別するための番号
QBLOCKNO SMALLINT クエリ内の各クエリブロックを識別するための番号
アプリケーション名 VARCHAR(24) 行のアプリケーションプランの名前
プログラム名 VARCHAR(24) 説明されているステートメントを含むプログラムまたはパッケージの名前
PREDNO INTEGER クエリ内の述語を識別するために使用される番号
TYPE CHAR(8)

述語のタイプまたは操作を示すために使用される文字列:

AND, OR, EQUAL, RANGE, BETWEEN, IN, LIKE, NOT LIKE, EXISTS, COMPOUND, NOT EXIST, SUBQUERY, HAVING, OTHERS

LEFT_HAND_SIDE VARCHAR(128) 述語の左辺(LHS)がテーブル列である場合(LHS_TABNO>0)、列名を示します: VALUE, COLEXP, NONCOLEXP, CORSUB, NONCORSUB, SUBQUERY, EXPRESSION, 空白
LEFT_HAND_PNO INTEGER 述語のLHSがテーブル列である場合(LHS_TABNO>0)、列名を示します: VALUE, COLEXP, NONCOLEXP, CORSUB, NOCORSUB, SUBQUERY, EXPRESSION, 空白
LHS_TABNO SMALLINT 述語のLHSがテーブル列である場合、クエリ内の対応するテーブル参照を一意に識別する番号を示します。
LHS_QBNO SMALLINT 述語のLHSがテーブル列である場合、クエリ内の対応するテーブル参照を一意に識別する番号を示します。
RIGHT_HAND_SIDE VARCHAR(128) 述語の右側(RHS)がテーブル列(RHS_TABNO>0)である場合、列名を示します: VALUE, COLEXP, NONCOLEXP, CORSUB, NONCORSUB, SUBQUERY, EXPRESSION, 空白
RIGHT_HAND_PNO INTEGER 述語が複合(AND/OR)の場合、2番目の子述語を示します
RHS_TABNO CHAR(1) 述語のRHSがテーブル列である場合、クエリ内の対応するテーブル参照を一意に識別する番号を示します
RHS_QBNO CHAR(1) 述語のRHSがサブクエリである場合、クエリ内の対応するクエリブロックを一意に識別する番号を示します
FILTER_FACTOR FLOAT 推定フィルタ係数
BOOLEAN_TERM CHAR(1) 述語が全体のWHERE句の真理値を決定するために使用できる場合
SEARCHARG CHAR(1) 述語がデータマネージャー(DM)のステージ1で処理可能かどうか
AFTER_JOIN CHAR(1)

述語評価フェーズを示します:

A = 結合後

D = 結合中

空白 = 該当なし

ADDED_PRED CHAR(1)

述語がDB2によって生成されたかどうか、及び述語が追加された理由:

空白 DB2は述語を追加しませんでした

‘B’ バブルアップのため

‘C’ 相関のため

‘J’ 結合のため

‘K’ 式ベースのインデックスのLIKEのため

‘L’ ローカリゼーションのため

‘P’ プッシュダウンのため

‘R’ ページ範囲のため

‘S’ 簡素化のため

‘T’ 推移閉包のため

冗長な述語 CHAR(1) 述語が冗長な述語かどうか
直接アクセス CHAR(1) 述語が直接アクセスであるかどうか、ROWIDを介して直接行にナビゲートされた
キーフィールド CHAR(1) 述語が関与するテーブルのインデックスキー列を含むかどうか
EXPLAIN_TIME TIMESTAMP EXPLAINのタイムスタンプ
テキスト VARCHAR(2000) 変換された述語のテキスト
マーカー CHAR(1) 述語がホスト変数、パラメータマーカー、または特別なレジスタを含むかどうか
親述語番号 INTEGER 親述語番号
否定 CHAR(1) 述語がNOTによって否定されているかどうか
リテラル VARCHAR(128) コロン記号で区切られたリテラル値またはリテラル値
句 CHAR(8)

述語が存在する句:

HAVING = HAVING句

ON = ON句

WHERE = WHERE句

SELECT = SELECT句

グループメンバー VARCHAR(24) EXPLAINを実行したDB2のメンバー名
起源 CHAR(1)

述語の起源を示します。

空白 = DB2によって生成

C = 列マスク

R = 行権限

U = ユーザーによって指定

不確実性 FLOAT(4) 述語の推定フィルターファクターの不確実性要因を説明します。大きな値は不確実性の度合いが高いことを示します。ゼロは不確実性がないか、考慮されない不確実性を示します。
SECTNOI INTEGER ステートメントのセクション番号
COLLID VARCHAR(128)

コレクションID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから発生

DSNEXPLAINMODEYES: 行はCURRENT EXPLAIN MODE特殊レジスタに対してYESを指定するアプリケーションから発生

DSNEXPLAINMODEEXPLAIN: 行はCURRENT EXPLAIN MODE特殊レジスタに対してEXPLAINを指定するアプリケーションから発生

SQLステートメントがコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーに埋め込まれている場合、列はコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーのスキーマです。

VERSION VARCHAR(122) パッケージのバージョン識別子
EXPANSION_REASON CHAR(2) 列はアーカイブテーブルまたはテンポラルテーブルを参照するステートメントのみに適用されます。それ以外の場合、列は空白です。
PER_STMT_ID BIGINT DB2カタログ内のSQLステートメントの持続的なステートメント識別子

DSN_PREDICATE_SELECTIVITY

アクセスパス選択に使用される述語の選択性に関する情報を含みます。選択性のオーバーライドが指定される場合、BIND QUERY コマンドの入力テーブルとして使用されます。

列名 データ型 説明
QUERYNO INTEGER 説明されている文を識別するための番号
QBLOCKNO SMALLINT クエリ内の各クエリブロックを識別する番号
APPLNAME VARCHAR(24) 行のアプリケーションプランの名前
PROGNAME VARCHAR(128) 説明されている文を含むプログラムまたはパッケージの名前
SECTNOI INTEGER 文のセクション番号
COLLID VARCHAR(128)

コレクションID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから発生します

DSNEXPLAINMODEYES: 行はCURRENT EXPLAIN MODE特別レジスタにYESを指定するアプリケーションから発生します

DSNEXPLAINMODEEXPLAIN: 行はCURRENT EXPLAIN MODE特別レジスタにEXPLAINを指定するアプリケーションから発生します

SQLステートメントがコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーに埋め込まれている場合、この列はコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーのスキーマです。

VERSION VARCHAR(122) パッケージのバージョン識別子
PREDNO INTEGER 述語番号。クエリ内の特定の述語を識別します
INSTANCE SMALLINT 選択性インスタンス。関連する選択性をグループ化するために使用されます
SELECTIVITY FLOAT 選択性の推定値
WEIGHT FLOAT(4) 指定された選択性を持つ実行の割合
ASSUMPTION VARCHAR(128)

NULLは、選択性がどのように推定されたか、または使用されることを示します

‘NORMAL’ – 選択性は通常の選択性の仮定を使用して推定されます

‘OVERRIDE’ – 選択性はオーバーライドに基づいています

INSERT_TIME TIMESTAMP 行が挿入または更新された時間
EXPLAIN_TIME TIMESTAMP

EXPLAIN情報がキャプチャされた時間:

すべてのキャッシュされたステートメント – ステートメントがキャッシュに入ったとき

キャッシュされていない静的ステートメント- ステートメントがバインドされたとき、

キャッシュされていない動的ステートメント  – EXPLAINが実行されたとき

EXPANSION_REASON CHAR(2) アーカイブテーブルまたは時間テーブルを参照する文にのみ適用されます。他の文については、この列は空白です。
PER_STMT_ID BIGINT DB2カタログのSQLステートメントに対する永続的なステートメント識別子

DSN_QUERYINFO_TABLE

自動クエリの書き換えに対するクエリブロックの適格性に関する情報を含みます…

列名 データ型 説明
QUERYNO INTEGER 説明されているステートメントを識別するための番号
QBLOCKNO SMALLINT クエリ内の各クエリブロックを識別する番号
QINAME1 VARCHAR(128)

TYPE='A'の場合:

·        REASON_CODE=0の場合、この値はクエリが送信されるアクセラレータサーバーの名前です

·        REASON_CODE<>0の場合、クエリはアクセラレータサーバーに送信されませんでした。REASON_CODE値はクエリがアクセラレータサーバーに送信されなかった理由を示します

QINAME2 VARCHAR(128) TYPE='A'かつREASON_CODE=0の場合、値は場所の名前です
APPLNAME VARCHAR(24) 行のアプリケーションプランの名前
PROGNAME VARCHAR(128) 説明されているステートメントを含むプログラムまたはパッケージの名前
VERSION VARCHAR(122) パッケージのバージョン識別子
GROUP_MEMBER VARCHAR(24) EXPLAINを実行したDB2のメンバー名
COLLID VARCHAR(128)

コレクションID:

DSNDYNAMICSQLCACHE - 行は動的ステートメントキャッシュから派生しています

DSNEXPLAINMODEYES - 行は、CURRENT EXPLAIN MODE特別レジスタに対してYESを指定するアプリケーションから派生しています

DSNEXPLAINMODEEXPLAIN - 行は、CURRENT EXPLAIN MODE特別レジスタに対してEXPLAINを指定するアプリケーションから派生しています

SQLステートメントがコンパイル済みSQL関数、ネイティブSQLプロシージャ、または高度なトリガーに埋め込まれている場合、この列はコンパイル済みSQL関数、ネイティブSQLプロシージャ、または高度なトリガーのスキーマです

SECTNOI INTEGER ステートメントのセクション番号
SEQNO INTEGER QI_DATAがその列のサイズを超えた場合の行のシーケンス番号
EXPLAIN_TIME TIMESTAMP

EXPLAIN情報がキャプチャされた時刻:

すべてのキャッシュされたステートメント -ステートメントがキャッシュに入ったとき

キャッシュされていない静的ステートメント -ステートメントがバインドされたとき

キャッシュされていない動的ステートメント -EXPLAINが実行されたとき

TYPE CHAR(8)

この行の出力タイプ:

A - 行はDB2がアクセラレータサーバーで実行しようとしたクエリのためのものです。REASON_CODE列の値は結果を示します

QI_DATA CLOB(2M)

TYPE='A'の場合:

·        REASON_CODEの値が0以外の場合、値はREASON_CODE値の説明です

·        REASON_CODEの値が0の場合、値はアクセラレータによる処理のために変換されたクエリテキストです

EXPANSION_REASON CHAR(2) この列はアーカイブテーブルまたは時間的テーブルを参照するステートメントのみに適用されます。他のステートメントに対しては、この列は空白です。
PER_STMT_ID BIGINT DB2カタログ内のSQLステートメントの永続的なステートメント識別子

DSN_PTASK_TABLE

クエリ内の並列タスクに関する情報を含みます

列名 データ型 説明
QUERYNO INTEGER 説明されるステートメントを識別するための番号
QBLOCKNO SMALLINT クエリ内の各クエリブロックを識別するために使用される番号
PGDNO SMALLINT 現在のクエリブロック内の並列グループ識別子
APPLNAME VARCHAR(24) 行のアプリケーションプラン名
PROGNAME VARCHAR(128) 説明されているステートメントを含むプログラムまたはパッケージの名前
LPTNO SMALLINT 並列タスク番号
KEYCOLID SMALLINT キーは ID(キー範囲のみ)を示します
DPSI CHAR(1) データパーティションセカンダリインデックス (DPSI) が使用されているかどうかを示します
LPTLOKEY VARCHAR(40) この並列タスクのこのキー列の低キー値(キー範囲のみ)
LPTHIKEY VARCHAR(40) この並列タスクのためのキー列の高キー値(キー範囲のみ)
LPTLOPAG CHAR(4) ページ範囲によってパーティション化されている場合の低ページ情報
LPTHIKEY CHAR(4) ページ範囲によってパーティション化されている場合の高ページ情報
LPTLOPG CHAR(4) 並列タスク(ページ範囲またはDPSI有効)のための下限ページ番号
LPTHIPG CHAR(4) 並列タスク(ページ範囲またはDPSI有効)のための上限ページ番号
LPTLOPT SMALLINT 並列タスク(ページ範囲またはDPSI有効)のための下限パーティション番号
KEYCOLDT SMALLINT このキー列のデータ型(キー範囲のみ)
KEYCOLPREC SMALLINT このキー列の精度/長さ(キー範囲のみ)
KEYCOLSCAL SMALLINT このキー列のスケール(キー範囲の小数データ型のみ)
EXPLAIN_TIME TIMESTAMP EXPLAIN タイムスタンプ
グループメンバー VARCHAR(24) EXPLAIN を実行した DB2 のメンバー名
SECTNOI INTEGER ステートメントのセクション番号
COLLID VARCHAR(128)

コレクション ID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから発生します

DSNEXPLAINMODEYES: 行は CURRENT EXPLAIN MODE 特殊レジスタに YES を指定するアプリケーションから発生します

DSNEXPLAINMODEEXPLAIN: 行は CURRENT EXPLAIN MODE 特殊レジスタに EXPLAIN を指定するアプリケーションから発生します

SQL ステートメントがコンパイルされた SQL 関数、ネイティブ SQL プロシージャ、または高度なトリガーに埋め込まれている場合、この列はコンパイルされた SQL 関数、ネイティブ SQL プロシージャ、または高度なトリガーのスキーマです

VERSION VARCHAR(122) パッケージのバージョン識別子
EXPANSION_REASON CHAR(2) 列はアーカイブテーブルまたは時間的テーブルを参照するステートメントにのみ適用されます。他のステートメントの場合、この列は空白です
PER_STMT_ID BIGINT DB2 カタログの SQL ステートメントに対する永続的ステートメント識別子

DSN_QUERY_TABLE

SQLステートメントに関する情報を含み、クエリ変換前後のステートメントをXMLで表示します

列名 データ型 説明
QUERYNO INTEGER 説明されるステートメントを特定するための番号
TYPE CHAR(8) NODE_DATA列のデータのタイプ
QUERY_STAGE CHAR(8) この行が入力されるクエリ変換中のステージ
SEQNO INTEGER NODE_DATAがその列のサイズを超える場合、この行のシーケンス番号
NODE_DATA CLOB(2M) SQLステートメントとそのクエリブロック、テーブル、列情報を含むXMLデータ
EXPLAIN_TIME タイムスタンプ EXPLAIN タイムスタンプ
QUERY_ROWID ROWID ステートメントの ROWID
グループメンバー VARCHAR(24) EXPLAIN を実行した DB2 サブシステムのメンバー名
HASHKEY INTEGER NODE_DATA の内容のハッシュ値
HASH_PRED CHAR(1) NODE_DATA に SQL ステートメントが含まれている場合、ステートメントがパラメータ マーケット リテラル、非パラメータ マーケット リテラル、または条件を含むかどうかを示します
SECTNOI INTEGER ステートメントのセクション番号
APPLNAME VARCHAR(24) 行のアプリケーションプランの名前
PROGNAME VARCHAR(128) 説明されるステートメントを含むプログラムまたはパッケージの名前
COLLID VARCHAR(128)

コレクションID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから始まります

DSNEXPLAINMODEYES: 行はCURRENT EXPLAIN MODEの特別レジスタに対してYESを指定するアプリケーションから始まります

DSNEXPLAINMODEEXPLAIN: 行はCURRENT EXPLAIN MODEの特別レジスタに対してEXPLAINを指定するアプリケーションから始まります

SQLステートメントがコンパイル済みSQL関数、ネイティブSQLプロシージャ、または高度なトリガーに埋め込まれている場合、列はコンパイル済みSQL関数、ネイティブSQLプロシージャ、または高度なトリガーのスキーマです。

VERSION VARCHAR(122) パッケージのバージョン識別子
EXPANSION_REASON CHAR(2) 列はアーカイブテーブルまたは時間テーブルを参照するステートメントのみに適用されます。そうでなければ、列は空白です。

DSN_SORTKEY_TABLE

クエリに必要なすべてのソートに関するソートキーの情報を含みます

列名 データ型 説明
QUERYNO INTEGER 説明されているステートメントを識別するための番号
QBLOCKNO SMALLINT クエリ内の各クエリブロックを識別するために使用される番号
PLANNO SMALLINT クエリブロック内の各ミニプランを識別するために使用される番号
APPLNAME VARCHAR(24) 行のアプリケーションプランの名前
PROGNAME VARCHAR(128) 説明されているステートメントを含むプログラムまたはパッケージの名前
COLLID VARCHAR(128)

コレクションID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから発生します

DSNEXPLAINMODEYES: 行はCURRENT EXPLAIN MODE特別レジスタに対してYESを指定するアプリケーションから発生します

DSNEXPLAINMODEEXPLAIN: 行はCURRENT EXPLAIN MODE特別レジスタに対してEXPLAINを指定するアプリケーションから発生します

SQLステートメントがコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーに埋め込まれている場合、列はコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーのスキーマです

SORTNO SMALLINT ソートのシーケンス番号
ORDERNO SMALLINT ソートキーのシーケンス
EXPTYPE CHAR(3) ソートキーのタイプ。可能な値はCOL、EXP、QRYです
TEXT VARCHAR(128) ソートキーのテキスト; 列名、スカラーサブクエリ、または「レコードID」である可能性があります
TABNO SMALLINT クエリ内の対応するテーブル参照を一意に識別する番号
COLNO SMALLINT クエリ内の対応する列を一意に識別する番号。ソートキーが列である場合のみ適用されます
DATATYPE CHAR(18) ソートキーのデータ型:HEXADECIMAL、CHARACTER、PACKED FIELD、FIXED(31)、FIXED(15)、DATE、TIME、VARCHAR、PACKED FLD、FLOAT TIMESTAMP、UNKNOWN DATA TYPE
LENGTH INTEGER ソートキーの長さ
EXPLAIN_TIME TIMESTAMP EXPLAIN タイムスタンプ
GROUP_MEMBER VARCHAR(24) EXPLAINを実行したDB2サブシステムのメンバー名
SECTNOI INTEGER ステートメントのセクション番号
VERSION VARCHAR(122) パッケージのバージョン識別子
EXPANSION_REASON CHAR(2) アーカイブテーブルまたは時間テーブルを参照するステートメントにのみ適用されます。それ以外は、空白
PER_STMT_ID BIGINT DB2カタログ内のSQLステートメントの永続的なステートメント識別子

DSN_SORT_TABLE

クエリに必要なソート操作に関する情報を含みます

列名 データ型 説明
QUERYNO INTEGER 説明されているステートメントを識別するための番号
QBLOCKNO SMALLINT クエリ内の各クエリブロックを識別するための番号
PLANNO SMALLINT クエリブロック内の各ミニプランを識別するための番号
APPLNAME VARCHAR(24) 行のアプリケーションプランの名前
PROGNAME VARCHAR(128) 説明されているステートメントを含むプログラムまたはパッケージの名前
COLLID VARCHAR(128)

コレクション ID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから発生

DSNEXPLAINMODEYES: 行は CURRENT EXPLAIN MODE 特殊レジスタに対して YES を指定するアプリケーションから発生

DSNEXPLAINMODEEXPLAIN: 行は CURRENT EXPLAIN MODE 特殊レジスタに対して EXPLAIN を指定するアプリケーションから発生

SQL ステートメントがコンパイルされた SQL 関数、ネイティブ SQL プロシジャ、または高度なトリガーに埋め込まれている場合、列はコンパイルされた SQL 関数、ネイティブ SQL プロシジャ、または高度なトリガーのスキーマです

SORTC CHAR(5)

複合テーブルのソート理由。以下の値のビットマップを使用:

G = グループ化

O = ソート

J = 結合

U = 一意性

SORTN CHAR(5)

合成テーブルの種類の理由。次の値のビットマップを使用しています:

G = グループ化

O = ソート

J = 結合

U = 一意性

SORTNO SMALLINT ソートのシーケンス
KEYSIZE SMALLINT ソートキーの長さの合計
EXPLAIN_TIME TIMESTAMP EXPLAIN タイムスタンプ
GROUP_MEMBER VARCHAR(24) EXPLAIN を実行した DB2 サブシステムのメンバー名
SECTNOI INTEGER ステートメントのセクション番号
VERSION VARCHAR(122) パッケージのバージョン識別子
EXPANSION_REASON CHAR(2) アーカイブテーブルまたは時系列テーブルを参照するステートメントのみに適用されます。それ以外は空白
PER_STMT_ID BIGINT DB2 カタログ内の SQL ステートメントの永続的なステートメント識別子

DSN_STATEMENT_CACHE_TABLE

ステートメントキャッシュ内のSQLステートメントに関する情報を含みます

カラム名 データ型 説明
STMT_ID INTEGER EDMの一意のトークン
STMT_TOKEN VARCHAR(240) ユーザー提供の識別文字列
COLLID VARCHAR(128)

コレクション ID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから発生

DSNEXPLAINMODEYES: 行は CURRENT EXPLAIN MODE 特殊レジスタに対して YES を指定するアプリケーションから発生

DSNEXPLAINMODEEXPLAIN: 行は CURRENT EXPLAIN MODE 特殊レジスタに対して EXPLAIN を指定するアプリケーションから発生

SQL ステートメントがコンパイルされた SQL 関数、ネイティブ SQL プロシージャ、または高度なトリガーに埋め込まれている場合、列はコンパイルされた SQL 関数、ネイティブ SQL プロシージャ、または高度なトリガーのスキーマです

プログラム名 VARCHAR(128) 最初のPREPAREを実行したパッケージまたはDBRMの名前
INV_DROPALT CHAR(1) DROP/ALTERによって無効化
INV_REVOKE CHAR(1) REVOKEによって無効化された
INV_LRU CHAR(1) LRUによってキャッシュから削除されました
INV_RUNSTATS CHAR(1) RUNSTATSによって無効化されました
CACHED_TS TIMESTAMP ステートメントがキャッシュされた時刻
USERS INTEGER 現在のステートメントのユーザー数。これは、現在のユニットまたは作業中にステートメントを準備または実行したユーザーです
COPIES INTEGER システム内のすべてのスレッドによって所有されるステートメントのコピー数
LINES INTEGER 初期PREPAREからのプリコンパイラ行番号
PRIMAUTH VARCHAR(128) 初期PREPAREを行ったユーザーの主要な認可ID
CURSQLID VARCHAR(128) 初期準備を行ったユーザーの現在のSQLID
BIND_QUALIFIER VARCHAR(128) 無資格のテーブル名のためのバインドオブジェクト修飾子
BIND_ISO CHAR(2)

ISOLATIONバインドオプション:

UR = コミットされていない読み取り

CS = カーソルの安定性

RS = 読み取りの安定性

RR = 繰り返し読み取り

BIND_CDATA CHAR(1)

DATA CURRENTDATAバインドオプション:

Y = CURRENTDATA(はい)

N = CURRENTDATA(いいえ)

BIND_DYNRL CHAR(1)

DYNAMICRULES バインドオプション:

B = DYNAMICRULES(BIND)

R = DYNAMICRULES(RUN)

BIND_DEGRE CHAR(1)

現在の DEGREE 値:

A = ANY

1 = 1

BIND_SQLRL CHAR(1)

現在の RULES 値:

D = DB2

S = SQL

BIND_CHOLD CHAR(1)

カーソル WITH HOLD バインドオプション:

Y = カーソル WITH HOLD の初期 PREPARE が完了している

N = カーソル WITH HOLD の初期 PREPARE は完了していない

STAT_TS TIMESTAMP IFCID 318 が開始されたときの統計のタイムスタンプ
STAT_EXEC INTEGER 列は非推奨です。代わりに STAT_EXECB を使用してください
STAT_GPAG INTEGER 列は非推奨です。代わりに STAT_GPAGB を使用してください
STAT_SYNR INTEGER 列は非推奨です。代わりに STAT_SYNRB を使用してください
STAT_WRIT INTEGER 列は非推奨です。代わりに STAT_WRITB を使用してください
STAT_EROW INTEGER 列は非推奨です。代わりに STAT_EROWB を使用してください
STAT_PROW INTEGER 列は非推奨です。代わりに STAT_PROWB を使用してください
STAT_SORT INTEGER 列は非推奨です。代わりに STAT_SORTB を使用してください
STAT_INDX INTEGER 列は非推奨です。代わりに STAT_INDXB を使用してください
STAT_RSCN INTEGER この列は非推奨です。代わりにSTAT_RSCNBを使用してください
STAT_PGRP INTEGER この列は非推奨です。代わりにSTAT_PGRPBを使用してください
STAT_ELAP FLOAT ステートメントの累積経過時間
STAT_CPU FLOAT ステートメントに使用された累積CPU時間
STAT_SUS_SYNIO FLOAT 同期I/Oの待機時間の累積
STAT_SUS_LOCK FLOAT ロックおよびラッチ要求の待機時間の累積
STAT_SUS_SWIT FLOAT 同期実行ユニットスイッチの待機時間の累積
STAT_SUS_GLCK FLOAT グローバルロックの待機時間の累積
STAT_SUS_OTHER FLOAT 別のスレッドによって行われた読み取りアクティビティの待機時間の累積
STAT_SUS_OTHW FLOAT 別のスレッドによって行われた書き込みアクティビティの待機時間の累積
STAT_RIDLIMT INTEGER この列は非推奨です。代わりにSTAT_RIDLIMTBを使用してください
STAT_RIDSTOR 整数 この列は非推奨です。代わりにSTAT_RIDSTORBを使用してください
EXPLAIN_TS タイムスタンプ ステートメントキャッシュテーブルがポピュレートされたとき
スキーマ VARCHAR(128) 現在のスキーマ値
STMT_TEXT CLOB(2M) ステートメントテキスト
STMT_ROWID ROWID ステートメントROWID
BIND_RO_TYPE CHAR(1)

ステートメントのREOPTオプションの現在の仕様:

N = REOPT(NONE)

1 = REOPT(ONCE)またはその同等物

A = REOPT(AUTO)またはその同等物

0 = REOPT(AUTO)の必要なし

BIND_RA_TOT 整数 REOPT(AUTO)オプションのために動的ステートメントに対して発行されたREBINDコマンドの合計数
GROUP_MEMBER VARCHAR(24) 行を挿入したDB2データ共有メンバーの名前
STAT_GPAGB BIGINT 実行されたgetpage操作の数
STAT_SYNRB BIGINT 実行された同期バッファ読み取りの数
STAT_WRITB BIGINT 実行されたバッファ書き込み操作の数
STAT_EPROWB BIGINT 検査された行の数
STAT_PROWB BIGINT 処理された行数
STAT_SORTB BIGINT 実行されたソートの数
STAT_EXECB BIGINT このステートメントが実行された回数。カーソルを持つステートメントの場合、これはOPENの数です
STAT_INDXB BIGINT 実行されたインデックススキャンの数
STAT_RSCNB BIGINT 実行されたテーブルスペーススキャンの数
STAT_PGRPB BIGINT 作成された並列グループの数
STAT_RIDLIMTB BIGINT RIDリストが使用されなかった回数。これはRIDの数がDB2の制限を超える場合です
STAT_RIDSTORB BIGINT RIDリストが使用されなかった回数。これは、RIDのリストを保持するのに十分なストレージがないためです
LITERAL_REPL CHAR(1)

リテラル値が置き換えられたキャッシュされたステートメントを特定します‘&’I:

R = ステートメントはリテラルを含むステートメントを集約する動作で準備され、ステートメント内のリテラル定数は‘&’に置き換えられます。

D = ステートメントは異なるリテラル再利用性基準を持つ重複ステートメントインスタンスです。

空白 = リテラル値は置き換えられていません。

STAT_SUS_LATCH FLOAT ラッチ要求のための累積待機時間
STAT_SUS_PLATCH FLOAT ページラッチ要求のための累積待機時間
STAT_SUS_DRAIN FLOAT ドレインロック要求のための累積待機時間
STAT_SUS_CLAIM FLOAT クレームカウント要求のための累積待機時間
STAT_SUS_LOG FLOAT ログライター要求のための累積待機時間
EXPANSION_REASON CHAR(2) アーカイブテーブルまたは時間テーブルを参照するステートメントにのみ適用されます。他のステートメントの場合、この列は空白です。
ACCELERATED CHAR(10) キャッシュされたステートメントが加速サーバー用に準備されたか。いいえ、はい、決して
STAT_ACC_ELAP BIGINT 加速器のための累積経過時間
STAT_ACC_CPU BIGINT 加速器のための累積CPU時間
STAT_ACC_ROW BIGINT 加速器から返された累積行数
STAT_ACC_BYTE BIGINT 加速器から返された累積バイト数
STAT_ACC_1ROW BIGINT 加速器から最初の行が返されるまでの待機時間
STAT_ACC_DB2 BIGINT DB2がクエリ結果を要求するために加速器が待機した合計時間
STAT_ACC_EXEC BIGINT 加速器のための累積実行時間
STAT_ACC_WAIT BIGINT 加速器のための累積待機時間
ACCEL_OFFLOAD_ELIGIBLE CHAR(1)

いいえ – ステートメントは加速の対象外

はい – ステートメントは加速候補です

ACCELERATOR_NAME VARCHAR(128) クエリを処理したアクセラレータサーバーの連結名
STAT_SUS_CHILDLLOCKS FLOAT ステートメントの子Lロックのための累積待機時間
STAT_SUS_OTHERLLOCKS FLOAT ステートメントの他のLロックのための累積待機時間
STAT_SUS_PPPLOCKS FLOAT ステートメントのP/PPロックのための累積待機時間
STAT_SUS_PAGEPLOCKS FLOAT ステートメントのPAGE Pロックのための累積待機時間
STAT_SUS_OTHERPLOCKS FLOAT ステートメントの他のPロックのための累積待機時間
PER_STMT_ID BIGINT 安定化された動的SQLのステートメント識別子
STBLGRP VARCHAR(128) START DYNQRYで指定された安定化グループ名
QUERY HASH CHAR(16) ステートメントユーザーによって生成されたハッシュキー
QUERY_HASH_VERSION INTEGER QUERY_HASHのバージョン
STABILIZED CHAR(1) ステートメントが安定化されたかどうかを示す
APPLCOMPAT CHAR(10) 動的SQLステートメントのアプリケーション互換性レベル
CNO BIGINT 動的クエリキャプチャモニターのコマンド番号
STAT_SUS_PIPE FLOAT ラッチ要求に対する累積待機時間

DSN_STATEMNT_TABLE

指定されたSQLステートメントの推定コストに関する情報を含みます。

列名 データ型 説明
QUERYNO INTEGER 説明されているステートメントを識別するための番号
APPLNAME VARCHAR(24) 行のアプリケーションプランの名前
PROGNAME VARCHAR(128) 説明されているステートメントを含むプログラムまたはパッケージの名前
COLLID VARCHAR(128)

コレクションID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから発生

DSNEXPLAINMODEYES: 行はCURRENT EXPLAIN MODE特別レジスタに対してYESを指定するアプリケーションから発生

DSNEXPLAINMODEEXPLAIN: 行はCURRENT EXPLAIN MODE特別レジスタに対してEXPLAINを指定するアプリケーションから発生

SQLステートメントがコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーに埋め込まれている場合、列はコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーのスキーマ

GROUP_MEMBER VARCHAR(24) EXPLAINを実行したDB2のメンバー名、または空白
EXPLAIN_TIME TIMESTAMP ステートメントが処理される時刻、PLAN_TABLEのBIND_TIMEと同じ
STMT_TYPE CHAR(6)

説明されているステートメントのタイプ:

SELECT = SELECT

INSERT = INSERT

UPDATE = UPDATE

DELETE = DELETE

MERGE = MERGE

TRUNCA = TRUNCATE

SELUPD = FOR UPDATE OFを伴うSELECT

DELCUR = CURSORのCURRENT WHERE DELETE

UPDCUR = CURSORのCURRENT WHERE UPDATE

COST_CATEGORY CHAR(1)

DB2がその見積もりを行う際にデフォルト値を使用することを強いられた場所:

A = デフォルト値を使用せずに行われたコスト見積もり

B = DB2がデフォルト値を使用することを強いられた条件が存在します。コストカテゴリAに見積もりを入れることができなかった理由を決定するためのREASONの値

PROCMS INTEGER SQLステートメントの推定プロセッサコスト(ミリ秒)
PROCSU INTEGER SQLステートメントのサービスユニットの推定プロセッサコスト
REASON VARCHAR(254)

コストカテゴリBに見積もりを入れる理由:

ACCELMODEL ELIGIBLE: 加速が適格

ACCELMODEL NOT ELIGIBLE: 加速が不適格

HAVING CLAUSE: SQLステートメント内のサブセレクトがHAVINGを含む

HOST VARIABLES: ステートメントがホスト変数、パラメータマーカー、または特別レジスタを使用

OPTIMIZATION HINTS: ステートメントレベルまたはアクセスパスヒントが適用された

PROFILEID: プロファイルモニタリングを使用している場合のプロファイルID

REFERENTIAL CONSTRAINTS: DELETEステートメントの対象テーブルにCASCADEまたはSET NULLタイプの参照制約が存在

TABLE CARDINALITY: ステートメントで使用される1つ以上のテーブルに対する基数統計が欠落

UDF: ステートメントがユーザー定義関数を使用

TRIGGERS: INSERT、UPDATE、またはDELETEステートメントの対象テーブルにトリガーが定義されている

STMT_ENCODE CHAR(1)

ステートメントのエンコーディングスキーム。ステートメントが単一のCCSIDセットを表す場合、可能な値は:

A = ASCII

E = EBCDIC

U = UNICODE

ステートメントが複数のCCSIDセットを持つ場合、列の値はM

TOTAL_COST FLOAT ステートメントの全体的な推定コスト。参考のみに使用すべきです
SECTNOI INTEGER ステートメントのセクション番号
VERSION VARCHAR(122) パッケージのバージョン識別子
EXPANSION_REASON CHAR(2) アーカイブテーブルまたは時間テーブルを参照するステートメントのみに適用されます。他のステートメントの場合、この列は空白です。
APCOMPARE_STATUS CHAR(1)

BINDまたはREBINDのAPCOMPAREオプションに対するアクセスパス比較操作のステータス

S = アクセスパス比較に成功

F = 新しいアクセスパスが以前と一致しない、比較に失敗

N - 一致しない

APREUSE_STATUS CHAR(1)

BINDまたはREBINDのAPREUSEオプションに対するアクセスパス比較操作のステータス

S = アクセスパス再利用に成功

F = アクセスパス再利用に失敗

N = 一致しない

APREUSE_VERSION VARCHAR(122) パッケージのバージョン識別子
APREUSE_COPYID INTEGER パッケージの識別子のコピー番号
EXPLAIN_TYPE CHAR(1)

行を作成したアクションのタイプ:

A = 自動再バインド

B = BINDコマンド

C = EXPLAIN STATEMENT CACHEステートメント

D = 動的EXPLAINステートメント

R = REBINDコマンド

S = EXPLAIN STABILIZED DYNAMIC QUERYステートメント

PER_STMT_ID BIGINT DB2カタログテーブル内のSQLステートメントの永続的なステートメント識別子
QUERY_HASH CHAR(16) ステートメントテキストによって生成されたハッシュキー

DSN_STAT_FEEDBACK

EXPLAIN中に定義された欠落または矛盾する統計をキャプチャするための推奨事項

Column Name データ型 説明
QUERYNO INTEGER 説明されているステートメントを識別するための番号
APPLNAME VARCHAR(24) 行のアプリケーションプランの名前
PROGNAME VARCHAR(128) プログラムまたはパッケージの名前
COLLID VARCHAR(128)

コレクション ID:

DSNDYNAMICSQLCACHE: 行は動的ステートメントキャッシュから発生

DSNEXPLAINMODEYES: 行はCURRENT EXPLAIN MODE特別レジスタにYESを指定するアプリケーションから発生

DSNEXPLAINMODEEXPLAIN: 行はCURRENT EXPLAIN MODE特別レジスタにEXPLAINを指定するアプリケーションから発生

SQLステートメントがコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーに埋め込まれている場合、列はコンパイルされたSQL関数、ネイティブSQLプロシージャ、または高度なトリガーのスキーマです

EXPLAIN_TIME TIMESTAMP EXPLAINタイムスタンプ
GROUP_MEMBER VARCHAR(24) EXPLAINを実行したDB2サブシステムのメンバー名
SECTNOI INTEGER ステートメントのセクション番号
VERSION VARCHAR(122) パッケージのバージョン識別子
TBCREATOR VARCHAR(128) テーブルの作成者
TBNAME VARCHAR(128) テーブルの名前
IXCREATOR VARCHAR(128) インデックスの作成者
IXNAME VARCHAR(128) インデックスの名前
COLNAME VARCHAR(128) 列の名前
NUMCOLUMNS SMALLINT 列グループ内の列の数
COLGROUPCOLNO VARCHAR(254) 統計に関連付けられた列のセットを識別する16進数表現
TYPE CHAR(1)

収集する統計の種類:

‘C’ カーディナリティ

‘F’ 頻度

‘H’ ヒストグラム

‘I’ インデックス

‘T’ テーブル

DBNAME VARCHAR(24) データベースの名前
TSNAME VARCHAR(24) テーブルスペースの名前
REASON CHAR(8)

統計が推奨された理由:

‘BASIC’ – 列テーブルまたはインデックスの基本的な統計値が欠けています。識別されたオブジェクトの統計は収集されていません

‘KEYCARD’ – インデックスキー列のカーディナリティが欠けています

‘LOWCARD’ – 列のカーディナリティが低い値であり、データが偏っている可能性を示しています

‘DEFAULT’ – プレディケートがおそらくデフォルト値を参照しているため、データが偏っている可能性があります

‘RANGEPRD’ – 範囲プレディケートのためのヒストグラム統計が利用できません

‘PARALLEL’ – キー範囲の均一なパーティショニングにより並列性を改善できる可能性があります

‘CONFLICT’ – 別の統計がこの統計の値と矛盾する値を含んでいます

‘COMPFFIX’ – インデックス複合フィルタファクターのためにマルチカラムカーディナリティ統計が必要です

‘STALE’ – 統計が同期していないようです

REMARKS VARCHAR(254) 拡張性のための自由形式のテキスト

DSN_STRUCT_TABLE

クエリ内のクエリブロックに関する情報を含みます

列名 データ型 説明
QUERYNO INTEGER 説明されるステートメントを識別するための番号
QBLOCKNO SMALLINT クエリ内の各クエリブロックを識別するための番号
APPLNAME VARCHAR(24) Name of application plan for row
PROGNAME VARCHAR(128) Name of program or package containing statement being explained
PARENT SMALLINT Parent query block number of current query block in structure of SQL text; same as PARENT_QBLOCKNO in PLAN_TABLE
TIMES FLOAT Estimated number of rows returned by Data Manager and number of executions of the query block
ROWCOUNT INTEGER Estimated number of rows returned by RDS (query cardinality)
ATOPEN CHAR(1) Whether query block is moved up for do-at-open processing. Y if done-at-open or N otherwise
CONTEXT CHAR(10) 現在のクエリブロックのコンテキスト。値は: TOP LEVEL, UNION, UNION ALL, PREDICATE, TABLE EXP, UNKNOWN
ORDERNO SMALLINT 使用されていない
DOATOPEN_PARENT SMALLINT 現在のクエリブロックの親クエリブロック番号。クエリブロックが開くときに行う親である場合、PLAN_TABLEのPARENT_QBLOCKNOと異なる場合があります
QBLOCK_TYPE CHAR(6)

現在のクエリブロックのタイプ:

SELECT, INSERT, UPDATE, DELETE, SELUPD, DELCUR, UPDCUR, CORSUB, NCOSUB, TABLEX, TRIGGR, UNION, UNIONA, CTE

PLAN_TABLEのQBLOCK_TYPE列に相当、CTEを除く

EXPLAIN_TIME TIMESTAMP EXPLAINタイムスタンプ
GROUP_MEMEBR CHAR(8) Member name of DB2 subsystem that executed EXPLAIN
ORIGIN CHAR(1)

Indicates the origin of the query block

Blank = generated by DB2

C = column mask

R = row permission

U = specified by the user

SECTNOI INTEGER Section number of the statement
COLLID VARCHAR(128)

Collection ID:

DSNDYNAMICSQLCACHE: row originates from dynamic statement cache

DSNEXPLAINMODEYES: row originates from an application that specifies YES for CURRENT EXPLAIN MODE special register

DSNEXPLAINMODEEXPLAIN: row originates from an application that specifies EXPLAIN for CURRENT EXPLAIN MODE special register

When SQL statement is embedded in a compiled SQL function, native SQL procedure or advanced trigger, column is schema of compiled SQL function, native SQL procedure or advanced trigger

VERSION VARCHAR(122) Version identifier for the package
EXPANSION_REASON CHAR(2) Applies to only statements that reference archive tables or temporal tables. For other statements, this column is blank
PER_STMT_ID BIGINT Persistent statement identifier for SQL statements in the DB2 catalog

DSN_VIEWREF_TABLE

クエリを処理するためのすべてのビューおよびマテリアライズドクエリテーブルに関する情報を含みます

列名 データ型 説明
QUERYNO INTEGER 説明されている文を識別するための番号
APPLNAME VARCHAR(24) 行のアプリケーションプランの名前
PROGNAME VARCHAR(128) 説明されている文を含むプログラムまたはパッケージの名前
VERSION VARCHAR(122) パッケージのバージョン識別子
COLLID VARCHAR(128) コレクションID
CREATOR VARCHAR(128) オブジェクトの所有者の承認ID
NAME VARCHAR(128) オブジェクトの名前
TYPE CHAR(1)

オブジェクトの種類:

V = ビュー

R = 書き換え用の基本テーブルを置き換えるために使用されるMQT

M = MQT

MQTUSE SMALLINT IBM内部専用
EXPLAIN_TIME TIMESTAMP EXPLAINタイムスタンプ
GROUP_MEMBER VARCHAR(24) EXPLAINを実行したDB2サブシステムの名前
SECTNOI INTEGER 文のセクション番号
EXPANSION_REASON CHAR(2) アーカイブテーブルまたは時間的テーブルを参照する文のみ適用される。他の文の場合、この列は空白。

免責事項: この Db2® 12 for z/OS リファレンスガイドは、z/OS 用の Db2 の管理およびプログラミングにおけるユーザーの日常業務を支援するために開発されました。このガイドの内容には、明示または暗示の保証はありません。ユーザーにとって質の高い有用なリファレンスを提供することを目指しています。このリファレンスガイドの間違いやエラーについては、blogs@bmc.com までご連絡ください。Db2 は IBM Corporation の登録商標です。

これらの投稿は私自身の見解であり、必ずしもBMCの立場、戦略、または意見を代表するものではありません。

メインフレームの関連記事

The Briefを購読する

このオファーに登録することで、あなたはBMCのプライバシーポリシーを読み、同意したことを確認します。

ありがとう

あなたはThe Briefに登録されました
The Briefはメインフレームとエンタープライズオーケストレーション—BMC AMIとControl-M—および、両者に関するアナリストの研究、顧客の展開、イベントをカバーしています。