SQLclまたはSQL*Plusを使用してOracleデータベースに対してクエリを実行すると、結果はSQLFORMAT
に従って表示されます。 オプション。しかし、その中には、結果の形式をカスタマイズするためにできることが他にもあります。
実行できることの1つは、出力グリッドの列区切り文字を指定することです。
これにより、出力グリッドをグリッド(またはテーブル)のように設定し、列を一種の垂直方向の境界線でより明確に定義できます。
デフォルトの列区切り文字は単一の空白スペースです。以下に、列の区切り文字をより見やすい区切り記号に変更する方法を示します。
デフォルトのセパレーター
まず、SQLFORMAT
を設定しましょう DEFAULT
へ :
SET SQLFORMAT DEFAULT;
これにより、以前のすべてのSQLFORMAT
がクリアされます 設定し、デフォルトの出力に戻ります。
次に、デフォルトの列区切り文字がどのように表示されるかを見てみましょう。
SELECT
employee_id,
first_name,
last_name,
job_id
FROM EMPLOYEES
ORDER BY employee_id ASC
FETCH FIRST 5 ROWS ONLY;
結果:
EMPLOYEE_ID FIRST_NAME LAST_NAME JOB_ID ----------- -------------------- ------------------------- ---------- 100 Steven King AD_PRES 101 Neena Kochhar AD_VP 102 Lex De Haan AD_VP 103 Alexander Hunold IT_PROG 104 Bruce Ernst IT_PROG
前述のように、デフォルトの列区切り文字は単一のスペースです。
変更しましょう。
カラムセパレータを設定する
列区切り文字をパイプ記号(|
)に設定しましょう ):
SET COLSEP '|'
それでは、クエリをもう一度実行してみましょう:
SELECT
employee_id,
first_name,
last_name,
job_id
FROM EMPLOYEES
ORDER BY employee_id ASC
FETCH FIRST 5 ROWS ONLY;
結果:
EMPLOYEE_ID|FIRST_NAME |LAST_NAME |JOB_ID -----------|--------------------|-------------------------|---------- 100|Steven |King |AD_PRES 101|Neena |Kochhar |AD_VP 102|Lex |De Haan |AD_VP 103|Alexander |Hunold |IT_PROG 104|Bruce |Ernst |IT_PROG
これで、パイプ記号が列の垂直境界線のように表示されます。
必要に応じて、これらの境界線の周囲にスペースを追加できます:
SET COLSEP ' | '
それでは、クエリをもう一度実行してみましょう:
SELECT
employee_id,
first_name,
last_name,
job_id
FROM EMPLOYEES
ORDER BY employee_id ASC
FETCH FIRST 5 ROWS ONLY;
結果:
EMPLOYEE_ID | FIRST_NAME | LAST_NAME | JOB_ID ----------- | -------------------- | ------------------------- | ---------- 100 | Steven | King | AD_PRES 101 | Neena | Kochhar | AD_VP 102 | Lex | De Haan | AD_VP 103 | Alexander | Hunold | IT_PROG 104 | Bruce | Ernst | IT_PROG