Mendapatkan Maklumat Lajur Terindeks dalam PostgreSQL
Dalam MySQL, arahan SHOW INDEXES boleh digunakan untuk mendapatkan semula lajur yang diindeks untuk sesuatu meja. Walau bagaimanapun, dalam PostgreSQL, tiada persamaan langsung dengan arahan ini.
Untuk mendapatkan maklumat ini dalam PostgreSQL, anda boleh menggunakan pertanyaan berikut:
SELECT t.relname AS table_name, i.relname AS index_name, a.attname AS column_name FROM pg_class t, pg_class i, pg_index ix, pg_attribute a WHERE t.oid = ix.indrelid AND i.oid = ix.indexrelid AND a.attrelid = t.oid AND a.attnum = ANY(ix.indkey) AND t.relkind = 'r' AND t.relname LIKE 'test%';
Pertanyaan ini menyertai jadual pg_class ( yang mengandungi maklumat tentang jadual), jadual pg_index (yang mengandungi maklumat tentang indeks), dan jadual pg_attribute (yang mengandungi maklumat mengenai lajur jadual). Ia kemudian menapis hasil untuk hanya memasukkan indeks untuk jadual tertentu (dalam contoh ini, jadual yang namanya bermula dengan "ujian").
Output pertanyaan ini ialah senarai nama indeks dan lajur yang mereka meliputi.
Untuk meringkaskan, manakala MySQL mempunyai arahan khusus untuk mendapatkan maklumat lajur yang diindeks, PostgreSQL memerlukan pertanyaan yang lebih kompleks yang melibatkan berbilang jadual menyertai. Namun begitu, pertanyaan yang diberikan dapat menyelesaikan tugas dengan berkesan.
Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Maklumat Lajur Terindeks dalam PostgreSQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!