sql >> Database teknologi >  >> RDS >> PostgreSQL

Sådan ændres tabelkantstilen i psql-forespørgselsresultaterne

Når du bruger psql for at køre forespørgsler mod PostgreSQL, kan vi bruge \pset border og \pset linestyle kommandoer for at ændre grænsen for den tabel, der viser vores resultater.

Eksempler på \pset border

Her er nogle eksempler for at demonstrere, hvordan \pset border kommandoen påvirker kantformatet, når du bruger standard linestyle indstilling af ascii .

Værdien angivet til \pset border skal være et tal. Generelt gælder det, at jo højere tal, jo flere kanter og linjer vil tabellerne have, men dette afhænger af det særlige format.

I HTML-format oversættes dette direkte til border= … attribut.

I de andre formater, mens det er muligt at bruge højere tal, er det kun værdierne 0 (ingen kant), 1 (interne skillelinjer) og 2 (bordramme) giver mening.

Grænse 0

\pset linestyle ascii
\pset border 0
SELECT * FROM Pets;

Resultat:

petid pettypeid ownerid petname    dob     
----- --------- ------- ------- ----------
    1         2       3 Fluffy  2020-11-20
    2         3       3 Fetch   2019-08-16
    3         2       2 Scratch 2018-10-01
    4         3       3 Wag     2020-03-15
    5         1       1 Tweet   2020-11-28
    6         3       4 Fluffy  2020-09-17
    7         3       2 Bark    
    8         2       4 Meow    
(8 rows)

Kant 1

\pset linestyle ascii
\pset border 1
SELECT * FROM Pets;

Resultat:

 petid | pettypeid | ownerid | petname |    dob     
-------+-----------+---------+---------+------------
     1 |         2 |       3 | Fluffy  | 2020-11-20
     2 |         3 |       3 | Fetch   | 2019-08-16
     3 |         2 |       2 | Scratch | 2018-10-01
     4 |         3 |       3 | Wag     | 2020-03-15
     5 |         1 |       1 | Tweet   | 2020-11-28
     6 |         3 |       4 | Fluffy  | 2020-09-17
     7 |         3 |       2 | Bark    | 
     8 |         2 |       4 | Meow    | 
(8 rows)

Grænse 2

\pset linestyle ascii
\pset border 2
SELECT * FROM Pets;

Resultat:

+-------+-----------+---------+---------+------------+
| petid | pettypeid | ownerid | petname |    dob     |
+-------+-----------+---------+---------+------------+
|     1 |         2 |       3 | Fluffy  | 2020-11-20 |
|     2 |         3 |       3 | Fetch   | 2019-08-16 |
|     3 |         2 |       2 | Scratch | 2018-10-01 |
|     4 |         3 |       3 | Wag     | 2020-03-15 |
|     5 |         1 |       1 | Tweet   | 2020-11-28 |
|     6 |         3 |       4 | Fluffy  | 2020-09-17 |
|     7 |         3 |       2 | Bark    |            |
|     8 |         2 |       4 | Meow    |            |
+-------+-----------+---------+---------+------------+
(8 rows)

Om \pset linestyle

Vi kan bruge \pset linestyle kommando for at ændre linjetegningsstilen for grænsen. Den kan indstilles til ascii , old-ascii eller unicode .

Eksempel:

\pset linestyle ascii
\pset linestyle old-ascii
\pset linestyle unicode

Her er en beskrivelse af hver:

  • ascii stil bruger almindelige ASCII-tegn. Nye linjer i data vises med en + symbol i højre margen. Når det ombrudte format ombryder data fra en linje til den næste uden et linjeskifttegn, vises en prik (. ) vises i højre margen på den første linje og igen i venstre margen på den efterfølgende linje.
  • old-ascii style bruger almindelige ASCII-tegn ved hjælp af formateringsstilen, der bruges i PostgreSQL 8.4 og tidligere. Nye linjer i data vises ved hjælp af en : symbol i stedet for venstre kolonneadskiller. Når dataene ombrydes fra en linje til den næste uden et linjeskifttegn, vises en ; symbolet bruges i stedet for den venstre kolonneseparator.
  • unicode stil bruger Unicode bokstegnetegn. Nye linjer i data vises med et vognretursymbol i højre margen. Når dataene ombrydes fra en linje til den næste uden et linjeskifttegn, vises et ellipsesymbol i højre margen på den første linje og igen i venstre margen på den efterfølgende linje.

Hvis du har brug for flere kantformateringsmuligheder, så tjek de smukke rammer i psql patch.


  1. Hvorfor bruger iteration gennem et stort Django QuerySet enorme mængder hukommelse?

  2. TABLOCK vs TABLOCKX

  3. Sådan finder du UTF-8-tegn i en Latin1-kodet kolonne - MySQL

  4. Brug af en IF-erklæring i en MySQL SELECT-forespørgsel