it-swarm.com.de

Wie werden lange Zeilen beim Auswählen von SQL-Textspalten umbrochen?

Ich wähle aus einer Tabelle mit langen Textspalten. Ich möchte lange Zeilen auf eine maximale Zeilenlänge umbrechen.

Von:

SELECT * FROM test;
test_id |                                  text
--------+-----------------------------------------------------------------------
      1 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris lorem

Zu:

test_id |              text
--------+-----------------------------
      1 | Lorem ipsum dolor sit amet,+
        | consectetur adipiscing elit+
        | . Mauris lorem
30
jkj

Wenn Sie das Befehlszeilentool psql verwenden, geben Sie zuerst diesen Befehl ein:

\pset format wrapped

Es sollte dann lange Zeilen wie folgt in Ihr Terminalfenster einschließen:

test_id |              text
--------+-----------------------------
      1 | Lorem ipsum dolor sit amet,.
        |.consectetur adipiscing elit.
        |.. Mauris lorem

Sie können auch die Anzahl der Spalten festlegen, mit denen umbrochen werden soll

\pset columns 100

und Sie können die Punkte in Ellipsen mit ändern

\pset linestyle unicode

Weitere Informationen: http://www.postgresql.org/docs/current/static/app-psql.html

30
linesarefuzzy

Meine Antwort wird Ihre Frage nicht direkt beantworten, da ich nicht glaube, dass psql dies speziell kann. Aber, \x aktiviert die erweiterte Ausgabe, wodurch Ihre Werte wie folgt platziert werden:

-[ RECORD 1 ]------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
id         | 1
longstring | This is a long string of text that will be quite long and most likely be very annoying to read if you are viewing results with more than at most a few columns of data. Words words words words words words lorem ipsum.

Sie können Ihren Pager auch so konfigurieren, dass keine Zeilen umbrochen werden.

Um zur normalen Anzeige zu wechseln, geben Sie einfach den Befehl\x erneut ein. Erklärung :

\x [on|off|auto] toggle expanded output (currently off)
10
Derek Arnold