PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Di PostgreSQL, bagaimana kita bisa tahu apakah setiap indeks tabel berkerumun atau tidak?

Postgres tidak mendukung indeks berkerumun dalam arti seperti di MySql. Mungkin ada indeks yang digunakan untuk mengelompokkan tabel. Anda dapat memeriksanya dengan menanyakan kolom indisclustered dalam katalog sistem pg_index.

Contoh:

create table my_table(id serial primary key, str text unique);

select relname, indisclustered
from pg_index i
join pg_class c on c.oid = indexrelid
where indrelid = 'public.my_table'::regclass

     relname      | indisclustered 
------------------+----------------
 my_table_str_key | f
 my_table_pkey    | f
(2 rows)

cluster my_table using my_table_str_key;

select relname, indisclustered
from pg_index i
join pg_class c on c.oid = indexrelid
where indrelid = 'public.my_table'::regclass

     relname      | indisclustered 
------------------+----------------
 my_table_str_key | t
 my_table_pkey    | f
(2 rows)

Baca di dokumentasi tentang CLUSTER:




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jumlah pesanan pengulangan / duplikat berturut-turut

  2. Panggilan fungsi PostgreSQL

  3. Penggantian substring PostgreSQL UPDATE

  4. bagaimana cara membuat kueri ini juga mengembalikan baris dengan nilai hitungan 0?

  5. Bagaimana Atanh() Bekerja di PostgreSQL