Respostas:
Na verdade, você pode habilitar a formatação no estilo \ G mysql por consulta no psql, colocando o seguinte em ~ / .psqlrc:
\set G '\\set QUIET 1\\x\\g\\x\\set QUIET 0'
Você pode então usar: G no final de uma consulta no cliente psql da mesma maneira que faria \ G no final de uma consulta no cliente 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
Tomando emprestado desta resposta :
Você pode anexar \x\g\x
à consulta exatamente como faria com o MySQL \G
. Por exemplo:
select * from users \x\g\x
Observe a falta de ;
na linha acima, isso é intencional.
Isso tem o efeito de ativar a exibição expandida, executar a consulta expressa e desativar a exibição expandida, tudo em uma instrução.
Desde o PostgreSQL 10, psql
tem \gx
qual é o equivalente exato do mysql\G
select * from sometable \gx
\ gx [nome do arquivo]
\ gx [| comando]
\ gx é equivalente a \ g, mas força o modo de saída expandida para esta consulta. Veja \ x.
A sequência \x\g\x
faz o mesmo, mas apenas quando \x
(= exibição expandida) está desativada. Caso contrário, faz o contrário! Por outro lado, \gx
sempre é exibido com a saída expandida independentemente do regime atual de \x
.
Você pode alternar o psql para o modo estendido com \ x antes de executar um comando, mas não pode fazê-lo por comando, como no mysql.