Jag tror att det skulle vara rimligt att göra det, eftersom semantiskt ett index i stigande eller fallande ordning är detsamma, men PostgreSQL stöder det inte. Det finns inget sätt att styra indexordningen för ett index som skapas automatiskt för att backa en primärnyckel.
PostgreSQL låter dig inte skapa ett genom att skapa indexet manuellt som en UNIQUE
index med DESC
sorteringsordning och skapa sedan en deklarerad PRIMARY KEY
begränsning med den genom att använda ALTER TABLE ... ADD CONSTRAINT ... PRIMARY KEY USING INDEX ...
. Det kommer att misslyckas med:
ERROR: index "foopk" does not have default sorting behavior
Jag vet inte i huvudet varför Pg kräver detta. Att söka i källkoden efter ovanstående fel skulle förmodligen hitta en lämplig kommentar.
Du kan få PRIMARY KEY
-liknande beteende utan begränsningsmetadata bara genom att skapa det unika indexet separat. Det kan vara okej för dig.