目的
この制御によって、ユーザーは、レポートの中の列と列との間に入れる文字列の幅と内容を指定できます。
構文
次のような場合に当てはまります。
- n
- 列と列を分離するスペースの数。
デフォルト値は、2です。 最大値は254です。
- string
- 列を区切る文字列。
デフォルトでは、システム値は2個のスペースです。
使用上の注意
.SET SEPARATOR nの場合は、列と列との間にn個の空白が挿入されます。 .SET SEPARATOR'string'の場合は、列の間に指定された文字列が挿入されます。
分離文字によってレポートがページに収まらなくなった場合には、ページに収まるようになるまで、その分離文字が右側から切り捨てられます。 分離文字は少なくとも1文字は残されます。
文字列の中に、特殊文字を使用しないでください。特殊文字の解釈は、出力デバイスごとに異なります。 そのため、出力を別のデバイスに送る場合には、特殊文字を含むスクリプトの修正が必要になる場合もあります。
文字列に単一引用符が含まれている場合は、SEPARATORコマンドの2番目の形式、つまり、区切り記号として二重引用符を付けた形式を使用するか、または単一引用符を二重にします。例えば、次のようになります。
.SET SEPARATOR " Item's value "
または
.SET SEPARATOR ' Item''s value '
単一引用符が含まれていない場合には、SEPARATORコマンドの2つの形式はまったく同じです。
nの値を指定しなかった場合には、n = 0になります。
オプションのALLパラメータを指定すると、分離文字を使用して次のタスクを実行できます。
- WITH句に関連するサマリー行も含め、すべてのデータ行に分離文字を挿入する
- 空白および分離文字のみが含まれる列のタイトル行は表示しない
SET SEPARATOR ALLコマンドは、SIDETITLESまたはFOLDLINEコマンドと併用しないでください。 また、サマリー行のタイトルがデータの左側に出力されるときにALLパラメータを使用すると、サマリー行のタイトルの上に分離文字が重なって出力されることがあります。
SEPARATOR設定が影響するのはフィールド モードの出力のみです。レコード モード、標識モード、またはマルチパート標識モードの出力には影響しません。
SEPARATORコマンドは、Teradata SQLマクロで使用できます。
例1 – SEPARATOR
列の区切り文字として縦棒を指定するには、次のように入力します。
database Workforce; .defaults .format on .heading "set separator |" .set separator "|" select Name ,EmpNo ,JobTitle from Employee order by Name ; .format off .logoff .exit
BTEQの応答
*** Query completed. 21 rows found. 3 columns returned. set separator | Name |EmpNo|JobTitle ------------ ----- ------------ Aguilar J |10007|Manager Brangle B |10020|Salesperson Carter J |10016|Engineer Chin M |10011|Controller Clements D |10022|Salesperson Greene W |10017|Payroll Ck Inglis C |10014|Tech Writer Kemper R |10006|Assembler Leidner P |10003|Secretary Marston A |10009|Secretary Moffit H |10002|Recruiter . . . (etc)
例2 – SEPARATOR
列の区切り記号として4つの空白を指定するには、次のように入力します。
.SET SEPARATOR 4
例3 – マクロによって出力されるSEPARATOR
Teradata SQLマクロでは、前の例のSEPARATORコマンドは次のようになります。
ECHO '.SET SEPARATOR 4';
例4 – SEPARATOR
ALLパラメータを指定するには、次のように入力します。
set separator '|' all