sql >> データベース >  >> RDS >> Oracle

SQL * Plus/SQLcl出力グリッドに垂直方向の境界線を追加する方法

    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   

    1. Oracle(11.2.0.1):UPDATEステートメントによって現在更新されている行を識別する方法

    2. 更新クエリの最適化

    3. MariaDBで接続の照合を表示する3つの方法

    4. MaxscaleからProxySQLロードバランサーへの移行