Tôi nghĩ sẽ hợp lý khi làm điều đó, vì về mặt ngữ nghĩa một chỉ mục theo thứ tự tăng dần hoặc giảm dần là như nhau, nhưng PostgreSQL không hỗ trợ nó. Không có cách nào để kiểm soát thứ tự chỉ mục của một chỉ mục được tạo tự động để sao lưu khóa chính.
PostgreSQL sẽ không cho phép bạn tạo chỉ mục bằng cách tạo chỉ mục theo cách thủ công dưới dạng UNIQUE
lập chỉ mục với DESC
sắp xếp thứ tự rồi tạo PRIMARY KEY
đã khai báo ràng buộc với nó bằng cách sử dụng ALTER TABLE ... ADD CONSTRAINT ... PRIMARY KEY USING INDEX ...
. Nó sẽ không thành công với:
ERROR: index "foopk" does not have default sorting behavior
Tôi không biết tại sao Pg yêu cầu điều này. Tìm kiếm mã nguồn cho lỗi trên có thể bạn sẽ thấy một nhận xét phù hợp.
Bạn có thể nhận được PRIMARY KEY
giống như hành vi mà không có siêu dữ liệu ràng buộc chỉ bằng cách tạo chỉ mục duy nhất một cách riêng biệt. Điều đó có thể ổn đối với bạn.