Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Bagaimana cara mempercantik output yang berasal dari kueri SELECT di command prompt?

atur lebar kolom agar pas di layar

misalnya:

column EMAIL_ADDR format a30 

di mana a adalah lebar kolom hte. anda dapat menggunakan WRA untuk membungkus kolom

column EMAIL_ADDR format a30 WRA

atau TRU untuk memotong, WOR untuk menembus batas kata

misalnya:

SQL> select * from emp;

        ID FIRST_NAME
---------- ------------------------------
LAST_NAME
------------------------------
EMAIL_ADDR
--------------------------------------------------
         1 Dazza
Smith
[email protected]

jadi outputnya agak sulit dibaca karena email_addr diisi hingga 300 karakter (seperti tabel saya mendefinisikannya sebagai varchar2(300) yang digunakan sql*plus untuk memformat output).

pertama-tama atur ukuran garis yang sesuai:

   SQL> set linesize 100 

sekarang mari kita atur kolom agar muat dalam satu baris (ukuran garis harus lebih besar dari total lebar kolom):

   SQL> column email_addr format a30 
   SQL> column last_name format a20 
   SQL> column first_name format a20 
   SQL> select * from emp;

            ID FIRST_NAME           LAST_NAME            EMAIL_ADDR
    ---------- -------------------- -------------------- ------------------------------
             1 Dazza                Smith                [email protected]

jadi sekarang kolom-kolom tersebut dengan mudah masuk ke terminal berukuran cukup.

dalam kasus Anda first_name dan last_name adalah varchar2(50) namun data di dalamnya jauh lebih kecil, jadi saya akan mulai dengan column first_name format a15 (sama untuk nama_belakang). dengan email, kolom Anda adalah varchar2(100) namun output berukuran maksimal adalah 25 karakter, jadi masukkan column email format a25 sebagai permulaan.

jika Anda melakukannya, Anda akan mendapatkan output (jika ukuran garis cukup tinggi) seperti:

SQL> select * from xtern_empl_rpt ;

EMP LAST_NAME       FIRST_NAME     SSN       EMAIL_ADDR                YEARS_OF_SERVICE
--- --------------- -------------- --------- ------------------------- ----------------
001 Hutt            Jabba          896743856 [email protected]      18

akhirnya sesuai permintaan. WRA TRU dan WOR . WRA adalah default, jadi Anda tidak perlu menggunakannya tetapi katakanlah kami memiliki:

SQL> select * from test;

A
--------------------------------------
THIS IS A SIMPLE WRAPPING TEST

tetapi saya ingin memformat ini sebagai lebar 10 karakter:

S

QL> col a format a10 WRA
SQL> select * from test;

A
----------
THIS IS A
SIMPLE WRA
PPING TEST

WRA berarti potong saja string pada 10 karakter, terlepas dari apakah kita berada di tengah kata atau tidak. jika kita ingin memecah HANYA pada akhiran kata (jika memungkinkan karena kata> 10 masih perlu dipatahkan):

SQL> col a format a10 WOR
SQL> select * from test;

A
----------
THIS IS A
SIMPLE
WRAPPING
TEST

sekarang output rusak pada batas kata dan tidak harus pada 10 karakter.

jika kita hanya menginginkan 10 karakter pertama dan tidak ada pembungkus baris, kita dapat menggunakan TRU :

SQL> col a format a10 TRU
SQL> select * from test;

A
----------
THIS IS A


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Di Oracle, apakah mungkin untuk INSERT atau UPDATE catatan melalui tampilan?

  2. SQL:hapus semua data dari semua tabel yang tersedia

  3. Kontainer Oracle untuk J2EE (OC4J) di R12

  4. Cara mematikan pernyataan SELECT yang sedang berjalan

  5. Oracle:Pencarian teks lengkap dengan kondisi