2.8 問合せ結果の書式設定
次のコマンドを使用して、問合せ結果の書式設定、保存および表示を行います。
BRE[AK] [ON report_element [action [action]]] ...
次に示すような、レポートのどこで変更が発生するか、および実行する書式設定に関するアクションを指定します。
- 
                        特定の列について重複する値の非表示 
- 
                        特定の列値が変更されるたびに1行スキップ 
- 
                        特定の列値が変更されるたび、またはレポートの終わりに、計算された数値を出力 
現在のBREAKの定義を表示するには、句を指定せずにBREAKを入力します。
                  
ここで、report_elementの構文は次のとおりです。
                  
{column | expression | ROW | REPORT}
ここで、actionの構文は次のとおりです。
                  
[SKI[P] n | [SKI[P]] PAGE] [NODUP[LICATES] | DUP[LICATES]]
BTI[TLE] [printspec [text | variable] ...] | [ON | OFF]
各レポート・ページの下部にタイトルを配置し書式設定するか、または現行のBTITLE定義を表示します。printspecのかわりに、次のいずれかの句を使用します。
                  
- BOLD
- CE[NTER]
- COL n
- FORMAT text
- LE[FT]
- R[IGHT]
- S[KIP] [n]
- TAB n
CL[EAR] option ...
指定したオプションの現行の値または設定をリセットまたは消去します。
optionは、次のいずれかの句を表します。
                  
- BRE[AKS]
- BUFF[ER]
- COL[UMNS]
- COMP[UTES]
- CONTEXT
- SCR[EEN]
- SQL
- TIMI[NG]
COL[UMN] [{column | expr} [option ...]]
特定の列について次のような表示属性を指定します。
- 
                        列ヘッダーのテキスト 
- 
                        列ヘッダーの位置 
- 
                        NUMBERデータの書式 
- 
                        列データの折返し 
また、1つまたはすべての列の現行の表示属性も表示します。
optionは、次のいずれかの句を表します。
                  
- ALI[AS] alias
- CLE[AR]
- ENTMAP {ON | OFF}
- FOR[MAT] format
- HEA[DING] text
- JUS[TIFY] {L[EFT] | C[ENTER] | R[IGHT]}
- LIKE {expr | alias}
- NEWL[INE]
- NEW_V[ALUE] variable
- NOPRI[NT] | PRI[NT]
- NUL[L] text
- OLD_V[ALUE] variable
- ON | OFF
- WRA[PPED] | WOR[D_WRAPPED] | TRU[NCATED]
ノート:
現在、NEW_V[ALUE]変数構文のみがサポートされています。 
                  COLUMN [{column |expr} FORMAT format]と入力します。ここでformat要素は列の表示書式を指定します。 
                  
NUMBER列の表示書式を変更するには、FORMATの後に、次の表のいずれかの要素を指定します。
                  
| 要素 | 例 | 説明 | 
|---|---|---|
| 
 | 9,999 | 指定した位置にカンマが表示されます。 | 
| 
 | 99.99 | 数値の整数部と小数部を区切るピリオド(小数点)が表示されます。 | 
| 
 | $9999 | 先行ドル記号が表示されます。 | 
| 
 | 0999 9990 | 先行または後続ゼロ(0)を表示します。 | 
| 
 | 9999 | 9の数で指定した桁数の値が表示されます。値には、正の値の場合は先行空白、負の値の場合は先頭に先行マイナス記号が表示されます。先行0(ゼロ)には空白が表示されます。0(ゼロ)の値には0(ゼロ)が表示されます。 | 
| 
 | B9999 | 書式モデル内の0(ゼロ)にかかわらず、整数部が0(ゼロ)の場合、固定小数点数の整数部に空白が表示されます。 | 
| 
 | C999 | 指定した位置にISO通貨記号が表示されます。 | 
| 
 | 99D99 | 数値の整数部と小数部を区切る小数点文字が表示されます。 | 
| 
 | 9.999EEEE | 値を科学表記法に従って表示します(指定するときは、必ずEを正確に4つ入力します)。 | 
| 
 | 9G999 | 数値の整数部の指定した位置に桁グループ・セパレータが表示されます。 | 
| 
 | L999 | 指定した位置に各国通貨記号が表示されます。 | 
| 
 | 9999MI | 負の値の後に後続マイナス記号が表示されます。正の値の後に、後続空白を表示します。 | 
| 
 | 9999PR | 負の値は<山カッコ>で囲まれて表示されます。正の値の場合は、先行空白および後続空白が表示されます。 | 
| 
 | RN rn | 大文字のローマ数字が表示されます。小文字のローマ数字が表示されます。値は1から3999の整数となります。 | 
| 
 | S9999 9999S | 先行マイナス記号またはプラス記号が表示されます。後続マイナス記号またはプラス記号が表示されます。 | 
| 
 | TM | 小数点文字の最小の数が表示されます。デフォルトはTM9です。出力に使用される固定表記法の場合は最大64文字、科学表記法の場合は65文字以上です。TMの前に他の要素を指定することはできません。TMの後には単一の9またはEのみを指定できます。 | 
| 
 | U9999 | 指定した位置に、第2通貨記号が表示されます。 | 
COMP[UTE] [function [LAB[EL] text] ... OF {expr | column | alias} ...ON {expr | column | alias | REPORT | ROW} ...]
BREAKコマンドと組み合せて、様々な標準計算を使用してサマリー行を計算および出力します。すべてのCOMPUTE定義もリスト表示します。次の表に有効な関数を示します。NUMBER以外の関数は、NULL値に対して使用できません。COMPUTEの関数は、常にAVG、COUNT、MINIMUM、MAXIMUM、NUMBER、SUM、STD、VARIANCEの順に実行されます。
                  
| 関数 | 計算結果 | 適用されるデータ型 | 
|---|---|---|
| AVG | NULL以外の値の平均 | NUMBER | 
| COU[NT] | NULL以外の値の数 | すべての型 | 
| MIN[IMUM] | 最小値 | NUMBER、CHAR、NCHAR、VARCHAR2(VARCHAR)、NVARCHAR2(NCHAR VARYING) | 
| MAX[IMUM] | 最大値 | NUMBER、CHAR、NCHAR、VARCHAR2(VARCHAR)、NVARCHAR2(NCHAR VARYING) | 
| NUM[BER] | 行数 | すべての型 | 
| SUM | NULL以外の値の合計 | NUMBER | 
| STD | NULL以外の値の標準偏差 | NUMBER | 
| VAR[IANCE] | NULL以外の値の平方偏差 | NUMBER | 
SET SQLFORMAT {csv | html | xml | json | ansiconsole | insert | loader | fixed | default}
レポートを様々な形式で出力します。ansiconsoleオプションでは、読みやすくするために、列の幅に応じてデータの書式を設定したりサイズを変更します。jsonオプションは、問合せをJSON形式で返します。
                  
SET SQLFORMAT DELIMITED <delimiter> <left enclosure> <right enclosure>を指定すると、カスタム区切り形式を設定できます。
                  
SET SQLFORMAT JSON-FORMATTEDは、問合せを適切に書式設定されたJSON出力で返します。
                  
SPO[OL] [filename[.ext] [CRE[ATE] | REP[LACE] | APP[END]] | OFF | OUT]
問合せ結果をファイルに格納し、必要に応じてそのファイルをプリンタに送信します。OFFはスプールを停止します。OUTはスプールを停止し、そのファイルをコンピュータのデフォルト・プリンタに送信します。現在のスプール状態を表示するには、句を指定せずにSPOOLを入力します。ファイル拡張子が指定されていない場合は、デフォルトの拡張子(.lstまたは.lis)が使用されます。 
                  
TTI[TLE] [printspec [text | variable] ...] | [ON | OFF]
各レポート・ページの上部に、指定したタイトルを配置して書式設定したり、現行のTTITLE定義を表示します。TTITLEコマンドの後に引用符で囲まれた単一の語または文字列のみを指定した場合は、旧形式のTTITLEが使用されます。
printspecは、次の1つ以上の句を表します。
                  
- BOLD
- CE[NTER]
- COL n
- FORMAT text
- LE[FT]
- R[IGHT]
- S[KIP] [n]
- TAB n