programing

테이블에 대해 작성된 인덱스를 postgres에 나열하는 방법

starjava 2023. 7. 6. 21:44
반응형

테이블에 대해 작성된 인덱스를 postgres에 나열하는 방법

postgresql의 일부 테이블에 대해 어떤 인덱스가 생성되는지 확인하는 방법을 알려주시겠습니까?

pg_indexes 보기를 사용하면 데이터베이스의 각 인덱스에 대한 유용한 정보에 액세스할 수 있습니다.

select *
from pg_indexes
where tablename not like 'pg%';

psql에 있는 경우:

\d tablename

인덱스, 외부 키 및 참조 표시...

이 쿼리를 사용할 수 있습니다.

select tablename,indexname,tablespace,indexdef from pg_indexes where tablename = 'your_table_name';

여기서 hastablenamepg_indexes의 필드이며 WHERE 의 'your_table_name'에 있는 사용자 정의 테이블과 일치하여 정확한 인덱스를 얻을 수 있습니다.그러면 원하는 세부 정보가 제공됩니다.

모든 인덱스 관련 정보를 에서 찾을 수 있습니다.pg_indexes보기. 때로는 테이블이 일부 스키마("소유자")의 일부이거나 과거에 다른 이름을 가지고 있었을 수 있습니다(: Postgre 참조).SQL 테이블 이름 바꾸기).

먼저 테이블의 스키마("소유자")를 확인합니다.

SELECT schemaname, tablename FROM pg_tables WHERE tablename='table_name';

그런 다음 다음 쿼리 중 하나를 사용하여 테이블의 인덱스를 쿼리합니다.

SELECT tablename, indexname FROM pg_indexes WHERE tablename='table_name';
-- or 
SELECT * FROM pg_indexes WHERE tablename='schema_name.table_name';

위의 모든 것에 대한 대안으로 \d:

\d table_name;

명령어

\di

현재 스키마에 대한 모든 인덱스를 나열합니다.

언급URL : https://stackoverflow.com/questions/37329561/how-to-list-indexes-created-for-table-in-postgres

반응형