PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Làm cách nào để lấy (các) khóa chính của bảng từ Postgres qua plpgsql?

Truy vấn ở trên rất tệ vì nó thực sự chậm.

Tôi muốn giới thiệu phiên bản chính thức này:

http://wiki.postgresql.org/wiki/Retrieve_primary_key_columns

nếu cần lược đồ, truy vấn như sau

SELECT               
  pg_attribute.attname, 
  format_type(pg_attribute.atttypid, pg_attribute.atttypmod) 
FROM pg_index, pg_class, pg_attribute, pg_namespace 
WHERE 
  pg_class.oid = 'foo'::regclass AND 
  indrelid = pg_class.oid AND 
  nspname = 'public' AND 
  pg_class.relnamespace = pg_namespace.oid AND 
  pg_attribute.attrelid = pg_class.oid AND 
  pg_attribute.attnum = any(pg_index.indkey)
 AND indisprimary


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để lấy giá trị từ hàng được chèn cuối cùng?

  2. Cách hoạt động của to_char () trong PostgreSQL

  3. Các truy vấn kiểu CHỌN có phải là kiểu duy nhất có thể được lồng vào nhau không?

  4. PgBouncer giúp tăng tốc Django như thế nào

  5. PostgreSQL 11:Có gì mới