Назад | Перейти на главную страницу

Postgres эквивалентен MySQL \ G?

Кто-нибудь знает, есть ли у 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.