U kunt een index maken voor een uitdrukking, in dit geval least()
en greatest()
:
create unique index idx_obj1_obj2 on table(least(Object1, Object2), greatest(Object1, Object2));
Opmerking:er is een kleine vreemdheid als de kolommen NULL
toestaan waarden. In dat geval zou dezelfde waarde slechts één keer worden toegestaan, ongeacht de kolom waarin deze zich bevindt. Dit kan worden opgelost met een meer gecompliceerde uitdrukking, als het daadwerkelijk een probleem is.