我想找到一种方法来为我的数据库中的一个主题存储多个地址,每个主题只有一个默认地址.
简而言之,我们假设有一张桌子:
CREATE TABLE test ( id integer NOT NULL,active boolean NOT NULL,CONSTRAINT pk_id PRIMARY KEY (id) )
对于表中的每个id,最多必须有1个真有效值.
我怎么能实现这个目标?
谢谢.
Partial index就是你想要的:
原文链接:https://www.f2er.com/postgresql/191988.htmlcreate unique index some_index on test (id) where active;
正如@ThiefMaster所述,应删除主要索引.