psql 명령 줄 인터페이스를 사용하여 테이블에 데이터를 표시하는 방법은 무엇입니까?


101

psql 명령 줄 인터페이스를 사용하여 테이블 내의 모든 콘텐츠를 표시하는 방법이 있습니까?

내가 사용할 수있는 \list모든 데이터베이스를 보여주기 위해 \d모든 테이블을 표시하지만, 내가 어떻게 테이블의 모든 데이터를 표시 할 수 있습니까?


stackoverflow.com/questions/9178406/… 이것은 당신에게 도움이 될 것입니다.
Wanna Coffee

답변:


163

최신 버전 : (8.4부터- 릴리스 정보에 언급 됨 )

TABLE mytablename;

더 길지만 모든 버전에서 작동합니다.

SELECT * FROM mytablename;

\x가독성을 위해 넓은 테이블 인 경우 먼저 사용하는 것이 좋습니다 .

긴 데이터의 경우 :

SELECT * FROM mytable LIMIT 10;

또는 유사합니다.

넓은 데이터 (큰 행)의 경우 psql명령 줄 클라이언트에서 \x표 형식 대신 키 / 값 형식으로 행을 표시하는 데 사용 하는 것이 유용합니다.

 \x
SELECT * FROM mytable LIMIT 10;

모든 경우에 끝에 세미콜론이 중요합니다.


1
더 큰 테이블을 처리 할 때 위의 대답에 유용한 추가 기능 LIMIT 100은 명령 에 추가 하는 것이므로 처음 100 개 (또는 원하는만큼) 행만 볼 수 있습니다.
Matt

SQL 명령에는 대문자 만 사용할 수 있습니다. 따라서 "select * from ..."은 작동하지 않습니다. "SELECT * FROM ..."을 사용해야합니다 (어쨌든 버전 9.1에서는)
MacGyver

2
@MacGyver 그것은 막연하게 최근의 PostgreSQL 버전에서도 사실이 아닙니다. 나는 7.2로 거슬러 올라간 Pg를 사용했고 대문자와 소문자에 대해 신경 쓰지 않았습니다 ( "MyTable"vs 와 같은 혼합 된 대소 문자 식별자 이름에 대한 식별자 인용 규칙 제외 MyTable).
Craig Ringer

데이터를 표시 할 수 없기 때문에 제가이 질문에 온 이유입니다. 나는 소문자를 사용하고 있었다. 내가 대문자를 시도했을 때, 나는 그것이 들리는 것처럼 이상하게 작동하도록 만들었다. 지금은 재현 할 수 없지만 댓글을 보관하고 다시 실패하면 다시 올 것입니다.
MacGyver

1
@AntonKahwaji 버전 8.4부터 사용 가능합니다. 를 참조하십시오 공식 문서를
인 Vignesh 라자

2

Windows에서는 따옴표로 묶인 테이블 이름을 사용하십시오. TABLE "user";또는SELECT * FROM "user";

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.