Postgresql 表上的条件唯一约束?

Postgresql 表上的条件唯一约束?,postgresql,constraints,unique-constraint,exclusion-constraint,Postgresql,Constraints,Unique Constraint,Exclusion Constraint,我有这张桌子: CREATE TABLE mitg.tbl_gch_customers ( pe character varying(10)NOT NULL, name character varying NOT NULL, city character varying, address character varying NOT NULL, state character varying, zip character varying ,

我有这张桌子:

CREATE TABLE mitg.tbl_gch_customers (
    pe character varying(10)NOT NULL,
    name character varying NOT NULL,
    city character varying,
    address character varying  NOT NULL,
    state character varying,
    zip character varying ,
    country character varying,
    phone character varying,
    "primary" character(1) NOT NULL
)

如何添加约束以确保将唯一行定义为唯一的
pe
“identifier”和
“primary”
=“Y”?换句话说,
“primary”
客户行对于每个
pe
编号只能有一个标记为“Y”的行。但此约束必须允许多个
“primary”
=“N”个客户拥有相同的
pe
号码。

这样做可以回答您的问题:在mitg.tbl\u gch\u客户(pe)中(“primary”=“Y”)使用
为“primary\u”客户创建唯一索引解决问题吗?旁白:“primary”实际上不应该用作列名,因为它是一个。类型可能应该是
boolean
,而不是
char(1)