PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Comment changer le style de bordure de tableau dans les résultats de la requête psql

Lors de l'utilisation de psql pour exécuter des requêtes sur PostgreSQL, nous pouvons utiliser la bordure \pset border et \pset linestyle commandes pour changer la bordure du tableau qui affiche nos résultats.

Exemples de \pset border

Voici quelques exemples pour montrer comment le \pset border La commande affecte le format de la bordure lors de l'utilisation du linestyle par défaut réglage de ascii .

La valeur fournie à \pset border doit être un nombre. En général, plus le nombre est élevé, plus les tableaux auront de bordures et de lignes, mais cela dépend du format particulier.

Au format HTML, cela se traduit directement par le border= … attribut.

Dans les autres formats, bien qu'il soit possible d'utiliser des nombres plus élevés, seules les valeurs 0 (pas de bordure), 1 (lignes de séparation internes) et 2 (cadre de tableau) ont du sens.

Bord 0

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

Résultat :

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)

Bord 1

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

Résultat :

 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)

Bord 2

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

Résultat :

+-------+-----------+---------+---------+------------+
| 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)

À propos de \pset linestyle

Nous pouvons utiliser le \pset linestyle commande pour changer le style de dessin au trait de la bordure. Il peut être défini sur ascii , old-ascii ou unicode .

Exemple :

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

Voici une description de chacun :

  • ascii style utilise des caractères ASCII simples. Les retours à la ligne dans les données sont affichés à l'aide d'un + symbole dans la marge de droite. Lorsque le format encapsulé encapsule les données d'une ligne à l'autre sans caractère de saut de ligne, un point (. ) est affiché dans la marge droite de la première ligne, et de nouveau dans la marge gauche de la ligne suivante.
  • old-ascii style utilise des caractères ASCII simples, en utilisant le style de formatage utilisé dans PostgreSQL 8.4 et versions antérieures. Les retours à la ligne dans les données sont affichés à l'aide d'un : symbole à la place du séparateur de colonne de gauche. Lorsque les données sont encapsulées d'une ligne à l'autre sans caractère de saut de ligne, un ; Le symbole est utilisé à la place du séparateur de colonne de gauche.
  • unicode style utilise des caractères de dessin de boîte Unicode. Les retours à la ligne dans les données sont affichés à l'aide d'un symbole de retour chariot dans la marge de droite. Lorsque les données sont renvoyées d'une ligne à l'autre sans caractère de retour à la ligne, un symbole d'ellipse s'affiche dans la marge droite de la première ligne, puis à nouveau dans la marge gauche de la ligne suivante.

Si vous avez besoin de plus d'options de formatage des bordures, consultez les jolies bordures dans le patch psql.