HEADINGとRTITLE - Basic Teradata Query

Basic Teradata Query リファレンス

Product
Basic Teradata Query
Release Number
16.20
Published
2018年4月
Language
日本語
Last Update
2019-07-11
dita:mapPath
ja-JP/kil1527114222313.ditamap
dita:ditavalPath
ja-JP/kil1527114222313.ditaval
dita:id
B035-2414
Product Category
Teradata Tools and Utilities

目的

HEADING – この制御によって、ユーザーは、レポートの各ページの最上部に出力されるヘッダーを指定できます。

RTITLE – この制御によって、ユーザーは、レポートの各ページの最上部に出力されるタイトルを指定できます。RTITLEコマンドで指定されたタイトルには、日付とページ番号が自動的に挿入されます。

HEADING構文



説明
string
ヘッダー用の文字列。

この文字列には分離記号も入れて最大253文字まで含めることができ、最大10行にわたる文字列にすることができます。

RTITLE構文



次のような場合に当てはまります。
string
タイトルのテキスト。

この文字列には分離記号も入れて最大253文字まで含めることができ、最大10行にわたる文字列にすることができます。

使用上の注意

代替コマンドとして、RTITLEコマンドを使用できます。 どちらも、レポートの各ページの最上部の10行を指定するために使用されます。 両方のコマンドが使用された場合には、あとで使用されたコマンドが有効になります。

RTITLEコマンドではページ ヘッダーにページ番号と日付が自動的に出力されます。HEADINGコマンドでは自動的には出力されません。 HEADINGコマンドでヘッダーにページ番号と日付を入れる場合には、コマンド引数文字列として&PAGEと&DATEの置換変数を指定しなければなりません。

ヘッダー文字列の中に、特殊文字を使用しないでください。特殊文字の解釈は、出力デバイスごとに異なります。 そのため、出力を別のデバイスに送る場合には、特殊文字を含むスクリプトの修正が必要になる場合もあります。

文字列に単一引用符が含まれている場合は、2つのコマンド形式、つまり、区切り記号として二重引用符を付けた形式を使用するか、または単一引用符を二重にします。例:

.SET HEADING "December's Results"

または

.SET RTITLE 'December''s Results' 

単一引用符が含まれていない場合には、コマンドの2つの形式はまったく同じです。

後続のすべてのセクションは、HEADINGとRTITLEの両方のコマンドに適用されます。

タイトルの書式化

以下の2種類の制御文字を使って、ヘッダーの書式を制御することができます。

制御文字 説明
二重の斜線(//) 行を分け、その位置から新しい行にする
二重の縦棒(||) 行をセクションに分割する

行の分離

ヘッダー行を分け、その位置から新しい行にするには、改行する位置に斜線の対(//)を挿入します。 HEADINGコマンドで、最大9対の二重斜線(最大10行)を指定できます。

行のセクションへの分割

分割する位置に二重の縦棒(||)を挿入することにより、1行のタイトルを3つまでのセクションに分割することができます。 ヘッダーの1行につき3つのセクション(2対の縦棒)を作ります。

指定 処理 結果
分割文字なしのタイトル ヘッダー行の変更なし ヘッダーは中央に配置される。
1対の分割文字 1行が2つのセクションに分割される。 行の左の部分は左詰めで、右の部分は中央に配置される。
2対の分割文字 1行が3つのセクションに分割される。 行の左端の部分は左詰めで、中央の部分は中央に、右端の部分は右詰めで配置される。
1対の切れ目のある縦棒を分離文字として使用することもできます。

3対以上の縦棒を指定した場合には、次のように処理されます。

システムの種類 結果
メインフレーム接続 2対目より後の部分もタイトルのテキストとみなされるが、2対を超える縦棒が使用されたという警告が表示される。
ワークステーション接続 2対目より後のテキストは、分離符(||)または(//)も含めて切り捨てられる。

置換変数の使用

ヘッダー文字列の任意の位置に、次の置換変数を使用することができます。

  • &DATE
  • &TIME
  • &PAGE
  • &n

構文規則:

置換変数 結果
&DATE YY/MM/DD形式の現在の日付
&TIME HH:MM形式の現在の時刻
&PAGE 現在のページ番号
&n ヘッダーの直後に表示される、返される行のn番目の列の内容。

次のような場合、&n置換変数を使用することはできません。

  • .SET FOLDLINE ON mを指定している場合
  • &nmの値よりも大きく、かつ&nが1より大きい場合
  • .SET FOLDLINE ON ALLを指定している場合

z/OS BTEQ Unicodeセッション内でエクスポートされていない出力の場合、この値はLATIN1文字だけで構成されている必要があります。

空白のヘッダー/タイトル行

タイトルの文字列として1つ以上の空白文字を指定したHEADER/RTITLEコマンドを入力した場合(例えば、.SET RTITLE' 'または.SET RTITLE" ")には、空白のタイトルが生成されます。

2つの引用符号

HEADING/RTITLEを単一引用符または二重引用符とともに使用し引用符の間に空白文字を入れない場合(例えば、.SET RTITLE ''または.SET RTITLE "")、BTEQはタイトル文字列に収まるだけのSQLリクエスト テキストを使用します。

デフォルトのヘッダーとタイトル

タイトルの指定にRTITLEコマンドを使用しない場合、またはヘッダーの指定にHEADINGコマンドを使用しない場合は、デフォルトで、日付、1行に収まるSQLリクエスト テキスト、およびページ番号が、次のようなフォーマットで1行のヘッダーまたはタイトルとして表示されます。

&DATE||as much SQL request text as can fit here||Page&PAGE

ページ幅を超えるヘッダー

ヘッダーの文字列がページ幅よりも大きい場合には、ページ幅に収まるように右側の部分が切り捨てられます(その行の空白以外の最後の文字としてダッシュ文字(-)を入れることにより、ヘッダーを次の行に継続させることができます)。

ヘッダーを指定するためのHEADINGコマンド、またはタイトルを指定するRTITLEコマンドを用いない場合には、デフォルトとして表示される1行のヘッダーまたはタイトルに、日付、行に収まるだけのSQLリクエスト テキスト、およびページ番号が、次の形式で出力されます。

&DATE||as much SQL request text as can fit here||Page&PAGE"
FORMATコマンドのオプションをOFFに設定した場合には、SHOW CONTROLSの出力の中にはヘッダーの指定が表示されます。HEADINGコマンドは書式化の段階で無視されます。 ヘッダーをレポートに入れる場合には、必ずFORMATコマンドのオプションをONに設定するようにします。

FOLDLINEコマンドを使用している場合でも、HEADINGコマンドによるヘッダーは最初のページに正しく表示されます。

HEADINGとRTITLEコマンドは、Teradata SQLマクロで使用できます。

例1 – HEADING

レポートからすべてのデータを省略する場合でもヘッダーは抑止されません。 次の例では、結果を簡潔にするためにOMITを使用しています。

database workforce;
.set defaults on
.set format on
.set heading 'Confidential Report'
.omit on
select * from employee
;

BTEQの応答

*** Query completed. 21 rows found. 12 columns returned.
          Confidential Report

例2 – HEADING

入力行継続を使用したHEADINGコマンドの引数の指定。

database workforce;
.set defaults
.set format on
.set heading 'This is an example -
of a continued -
heading'  
.omit on  
select * from employee
;

BTEQの応答

*** Query completed. 21 rows found. 12 columns returned.
This is an example of a continued heading

例3 – HEADING

分割された複数行ヘッダーの使用。

database workforce;
.set defaults 
.set format on 
.heading '&date||Marketing||Page&Page//Third Quarter//Chicago'
.omit on  select * from employee 
;
.set format off
.logoff
.exit

BTEQの応答

*** Query completed. 21 rows found. 12 columns returned.
   90/07/24              Marketing                 Page 1
                       Third Quarter
                       Chicago

例4 – マクロによって出力されるHEADING

Teradata SQLマクロでは、HEADINGコマンドは次のようになります。

ECHO '.SET HEADING
''&date||Marketing||Page&Page//Third -
Quarter//Chicago'' ';

または

ECHO '.SET HEADING
&date||Marketing||Page&Page// Third -
Quarter//Chicago"';

例5 – RTITLE

次の例では、タイトル文字列としてRtitle Onを使用しています。

database workforce;
.set defaults on
.set format on
.set rtitle 'Rtitle On'
select * from department;
.set defaults
.set format off
.logoff
.exit

BTEQの応答

*** Query completed. 5 rows found. 4 columns returned.   
90/08/01                Rtitle On                  Page 1
DeptNo  DeptName         Loc  MgrNo
------  --------------   ---  -----
   500  Engineering      ATL  10012
   700  Marketing        NYC  10021
   300  Exec Office      NYC  10018
   600  Manufacturing    CHI  10007
   10 0  Administration   NYC  10011