SIDETITLES - 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

目的

この制御によって、ユーザーは、SQL文に対して返されるデータの上側または左側のどちらにタイトルを配置するかを指定できます。デフォルトでは、列タイトルは列の上側に表示され、WITH句のサマリー タイトルは、記述されているデータの左側に表示されます。

構文



次のような場合に当てはまります。

withlist
SIDETITLESコマンドに関連するWITH句を識別する1~10の数値。数値はカンマで区切って指定します。

1で最初のWITH句を、2で2番目のWITH句を指定します。

withlistではなく0を指定した場合には、WITH句によって要約されないデータ(明細)に対して、サイド タイトルの出力が抑制されます。

使用上の注意

デフォルトは、結果列ヘッダーに対してはOFFであり、サマリー タイトル(Teradata SQLのWITH句で指定される)に対してはONとなっています。したがって、列ヘッダーは列の上に、WITH句のサマリー タイトルは対象となるデータの左側に表示されます。

.SET SIDETITLES ONとすると、このデフォルトが上書きされ、すべての列ヘッダーが列の左側に表示されます。

通常、.SET SIDETITLES ONは、FOLDLINEコマンドと組み合わせて使用されます。 FOLDLINEコマンドのオプションをON ALLに設定し、SIDETITLESコマンドをONに設定すると、各フィールドをそれぞれ別個の行に表示して、左側にそのタイトルを出力することができます。 この方法は、どのような形式のレポートにも収まらない長いフィールドがある場合に効果的です。

WITH句を使用して結果の最初の列の小計を計算する場合には、その結果の左側にはサマリー タイトルが表示されません。 SET SIDETITLES OFF 1を使用すれば、サマリー タイトルをサマリー結果の上に表示させることができます。

ONもOFFも指定せずにSIDETITLESコマンドを使用した場合には、列タイトルに対してのみSIDETITLESがONに設定されます。

SIDETITLES設定が影響するのはフィールド モードの出力のみです。レコード モード、標識モード、またはマルチパート標識モードの出力には影響しません。

SIDETITLESコマンドはTeradata SQLマクロで使用できます。

例1 – SIDETITLES

次の例は、SIDETITLESコマンドが出力にどのように作用するかを示したものです。

database workforce;
.defaults
.format on
.heading 'Sidetitles On'
.sidetitles on
.set suppress on 1
select   name
,deptno
,salary     from     employee
with     sum(salary)(title 'sum of salary')     by  deptno;
.defaults
.heading 'Sidetitles Off'
.sidetitles off
=1
.format off
.logoff
.exit

BTEQの応答

*** Query completed . 26 rows found. 3 columns returned.
                    Sidetitles On
Name  Peterson J    DeptNo  100  Salary    25,000 .00
Name  Chin M        DeptNo  100  Salary    38,000 .00
Name  Greene W      DeptNo  100  Salary    32,500 .00
Name  Moffit H      DeptNo  100  Salary    35,000 .00
                                           ----------
                           sum of salary  130,000 .00
Name  Phan A        DeptNo  300  Salary    55,000 .00
Name  Russell S     DeptNo  300  Salary    65,000 .00
Name  Leidner P     DeptNo  300  Salary    23,000 .00
                                          -----------
                           sum of salary  143.000.00
Name  Inglis C      DeptNo  500  Salary    34,000 .00
Name  Carter J      DeptNo  500  Salary    44,000 .00
Name  Watson L      DeptNo  500  Salary    56,000 .00
Name  Smith T       DeptNo  500  Salary    42,000 .00
Name  Omura H       DeptNo  500  Salary    40,000 .00
Name  Reed C        DeptNo  500  Salary    30,000 .00
Name  Marston A     DeptNo  500  Salary    22,000 .00
                                          -----------
                           sum of salary  268,000. 00
Name  Kemper R      DeptNo  600  Salary    29,000 .00
Name  Newman P      DeptNo  600  Salary    28,600 .00
Name  Aguilar J     DeptNo  600  Salary    45,000 .00
Name  Regan R       DeptNo  600  Salary    44,000 .00
                                          -----------
                           sum of salary  146,000 .00
Name  Smith T       DeptNo  700  Salary    45,000 .00
Name  Clements D    DeptNo  700  Salary    38,000 .00
Name  Brangle B     DeptNo  700  Salary    30,000 .00
                                          -----------
                           sum of salary  113,000 .00
*** Query completed. 26 rows found. 3 columns returned.   
                   Sidetitles Off
Name           DeptNo              Salary
------------   ------          ----------
Peterson J       100           25,000 .00
Chin M           100           38,000 .00
Greene W         100           32,500 .00
Moffit H         100           35,000 .00
                               ----------
                sum of salary 130,500 .00
Phan A           300           55,000 .00
Russell S        300           65,000 .00
Leidner P        300           23,000 .00
                               ----------
                sum of salary 143,000 .00
Inglis C         500           34,000 .00
Carter J         500           44,000 .00
Watson L         500           56,000 .00
Smith T          500           42,000 .00
Omura H          500           40,000 .00
Reed C           500           30,000 .00
Marston A        500           22,000 .00
                               ----------
                sum of salary 268,000 .00
Kemper R         600           29,000 .00
Newman P         600           28,600 .00
Name  Aguilar J     DeptNo  600  Salary    45,000 .00
Name  Regan R       DeptNo  600  Salary    44,000 .00
                                          -----------
                           sum of salary  146,000 .00
Name  Smith T       DeptNo  700  Salary    45,000 .00
Name  Clements D    DeptNo  700  Salary    38,000 .00
Name  Brangle B     DeptNo  700  Salary    30,000 .00
                                          -----------
                           sum of salary  113,000 .00

例2 – SIDETITLES

タイトルを左に出力した状態で、フィールドを別の行に表示するには、次のように入力します。

.SET FOLDLINE ON ALL
.SET SIDETITLES ON

例3 – マクロによって出力されるSIDETITLES

Teradata SQLマクロでは、使用例2のFOLDLINEおよびSIDETITLESコマンドは次のようになります。

ECHO '.SET FOLDLINE ON ALL';
ECHO '.SET SIDETITLES ON';