Wyświetl wybrane wyniki pionowo w psql, tak jak to robi MySQL \ G

85

W MySQL możesz zakończyć selectzapytanie za pomocą \G(w przeciwieństwie do \g), aby wyświetlić wyniki w pionie:

select * from foo \G

***************
 id: 1
bar: Hello
***************
 id: 2
bar: World

Jak można zrobić to samo dla PostgreSQL używając psql?

Drew Noakes
źródło
Zobacz także serverfault.com/a/37260/131498
phils
Czy to odpowiada na twoje pytanie? MySQL Extended Display
amfetamachine
1
@amfetamachine naprawdę nie. To pytanie jest odwrotne, więc w zależności od tego, który DB jesteś zaznajomiony, doszedłbyś w ten lub inny sposób. To pytanie ma znacznie więcej poglądów niż to pytanie, więc sugeruję, że ten zasób ma większy kapitał SEO z jakiegokolwiek powodu niż inna odpowiedź.
Drew Noakes

Odpowiedzi:

184

Możesz to zrobić, włączając Rozszerzone wyświetlanie .

Przełącz to ustawienie za pomocą \x. Na przykład:

# \x
Expanded display is on.
# \x
Expanded display is off.

Po włączeniu wyniki są wyświetlane w formie tabelarycznej (pionowej):

-[ RECORD 1 ]
id  | 1
bar | Hello
-[ RECORD 2 ]
id  | 2
bar | World

Możesz to uruchomić dla pojedynczego polecenia, używając \x\g\xsufiksu do włączania rozszerzonego wyświetlania, uruchamiania zapytania, a następnie wyłączania go ponownie.

select * from foo \x\g\x
Drew Noakes
źródło
7
Lub użyj -xprzełącznika podczas uruchamiania nieinteraktywnego ( psql db -xc 'select * from foo').
x-yuri