Saya pikir masuk akal untuk melakukan itu, karena secara semantik indeks dalam urutan menaik atau menurun adalah sama, tetapi PostgreSQL tidak mendukungnya. Tidak ada cara untuk mengontrol urutan indeks dari indeks yang dibuat secara otomatis untuk mendukung kunci utama.
PostgreSQL tidak akan mengizinkan Anda membuatnya dengan membuat indeks secara manual sebagai UNIQUE
indeks dengan DESC
mengurutkan urutan kemudian membuat PRIMARY KEY
yang dideklarasikan kendala dengan menggunakan ALTER TABLE ... ADD CONSTRAINT ... PRIMARY KEY USING INDEX ...
. Ini akan gagal dengan:
ERROR: index "foopk" does not have default sorting behavior
Saya tidak tahu dari atas kepala saya mengapa Pg membutuhkan ini. Mencari kode sumber untuk kesalahan di atas mungkin akan menemukan Anda komentar yang sesuai.
Anda bisa mendapatkan PRIMARY KEY
-seperti perilaku tanpa metadata kendala hanya dengan membuat indeks unik secara terpisah. Itu mungkin baik untuk Anda.