¿Cómo mostrar datos en una tabla usando la interfaz de línea de comandos psql?

101

¿Hay alguna manera de mostrar todo el contenido dentro de una tabla usando la interfaz de línea de comandos psql?

Puedo usar \listpara mostrar todas las bases de datos, \dpara mostrar todas las tablas, pero ¿cómo puedo mostrar todos los datos en una tabla?

Lisa
fuente
stackoverflow.com/questions/9178406/… esto podría serle útil.
Wanna Coffee

Respuestas:

163

Versiones más recientes: (desde 8.4 - mencionado en las notas de la versión )

TABLE mytablename;

Más largo pero funciona en todas las versiones:

SELECT * FROM mytablename;

Es posible que desee utilizar \xprimero si es una tabla amplia, para facilitar la lectura.

Para datos largos:

SELECT * FROM mytable LIMIT 10;

o similar.

Para datos amplios (filas grandes), en el psqlcliente de línea de comandos, es útil usar \xpara mostrar las filas en forma de clave / valor en lugar de tabuladas, por ejemplo

 \x
SELECT * FROM mytable LIMIT 10;

Tenga en cuenta que en todos los casos es importante el punto y coma al final.

Craig Ringer
fuente
1
Una adición útil a la respuesta anterior, ya que cuando se trata de tablas más grandes, es agregar LIMIT 100a su comando, para que pueda ver solo las primeras 100 (o tantas como desee) filas.
Matt
Solo las letras mayúsculas funcionan para el comando SQL. Así que "seleccionar * de ..." no funcionará. Debe utilizar "SELECT * FROM ..." (bueno, en la versión 9.1 de todos modos)
MacGyver
2
@MacGyver Eso no ha sido cierto para ninguna versión de PostgreSQL, incluso vagamente reciente. Usé Pg desde 7.2 y no le importaba el capital frente a las minúsculas (excepto por las reglas de citas de identificadores en torno a nombres de identificadores de mayúsculas y minúsculas como "MyTable"vs MyTable).
Craig Ringer
Esa fue la razón por la que llegué a esta pregunta porque simplemente no podía mostrar datos. Había estado usando letras minúsculas. Cuando probé las mayúsculas, lo hice funcionar, por extraño que parezca. Aunque no puedo reproducirlo ahora, guardaré mis comentarios y volveré si encuentro que falla nuevamente.
MacGyver
1
@AntonKahwaji Está disponible a partir de la versión 8.4. Consulte Documentos oficiales
Vignesh Raja
2

En Windows, use el nombre de la tabla entre comillas: TABLE "user";oSELECT * FROM "user";

israteneda
fuente