Tôi muốn lấy các cột có chỉ mục trong PostgreSQL.
Trong MySQL bạn có thể sử dụng SHOW INDEXES FOR table
và nhìn vào Column_name
cột.
mysql> show indexes from foos;
+-------+------------+---------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+-------+------------+---------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
| foos | 0 | PRIMARY | 1 | id | A | 19710 | NULL | NULL | | BTREE | |
| foos | 0 | index_foos_on_email | 1 | email | A | 19710 | NULL | NULL | YES | BTREE | |
| foos | 1 | index_foos_on_name | 1 | name | A | 19710 | NULL | NULL | | BTREE | |
+-------+------------+---------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
Có bất cứ điều gì như thế này tồn tại cho PostgreSQL?
Tôi đã thử \d
tại psql
dấu nhắc lệnh (với -E
tùy chọn hiển thị SQL) nhưng nó không hiển thị thông tin tôi đang tìm kiếm.
Cập nhật: Cảm ơn tất cả những người đã thêm câu trả lời của họ. cope360 đã cho tôi chính xác những gì tôi đang tìm kiếm, nhưng một số người đã theo đuổi với các liên kết rất hữu ích. Để tham khảo trong tương lai, hãy xem tài liệu về pg_index (thông qua Milen A. Radev ) và bài viết rất hữu ích Trích xuất thông tin META từ PostgreQuery (thông qua Michał Niklas ).