Кто-нибудь знает, есть ли у Postgres способ "красиво" отображать результаты запроса, например, как это делает MySQL при завершении запроса с помощью \ G в командной строке? Например, «выбрать * из некоторой таблицы \ G» вместо «выбрать * из некоторой таблицы;»
Большое спасибо!
Я недостаточно знаком с MySQL, чтобы знать, что делает параметр \ G, но, судя по документации, похоже, что параметр psql \ x может делать то, что вы хотите.
Однако это переключатель, поэтому вы делаете это перед отправкой запроса.
\x
select * from sometable;
Собственно, ты жестяная банка Включите форматирование стиля \ G mysql для каждого запроса в psql, поместив следующее в ~ / .psqlrc:
\set G '\\set QUIET 1\\x\\g\\x\\set QUIET 0'
Затем вы можете использовать: G в конце запроса в клиенте psql так же, как вы использовали бы \ G в конце запроса в клиенте mysql:
pagila=# select * from foo limit 1;
id | uniq | val | val_ts
----+------+-----+---------------------
1 | 1 | 3 | 2007-07-03 00:00:00
(1 row)
Time: 11.481 ms
pagila=# select * from foo limit 1 :G
-[ RECORD 1 ]---------------
id | 1
uniq | 1
val | 3
val_ts | 2007-07-03 00:00:00
Заимствование из этот ответ:
Вы можете добавить \x\g\x
к запросу так же, как и с MySQL \G
. Например:
select * from users \x\g\x
Обратите внимание на отсутствие ;
в строке выше это сделано намеренно.
Это приводит к включению расширенного отображения, выполнению выраженного запроса и отключению расширенного отображения - все в одном операторе.
Начиная с PostgreSQL 10, psql
имеет \gx
что является точным эквивалентом mysql \G
select * from sometable \gx
\ gx [имя файла]
\ gx [| команда]
\ gx эквивалентен \ g, но включает расширенный режим вывода для этого запроса. См. \ X.
Последовательность \x\g\x
делает то же самое, но только когда \x
(= расширенное отображение) выключено. В противном случае будет наоборот! Напротив \gx
всегда отображается с расширенным выводом независимо от текущего режима \x
.
Вы можете переключить psql в расширенный режим с помощью \ x перед запуском команды, но вы не можете делать это по команде, как в mysql.