我有一个PostgreSQL表

CREATE TABLE my_table
(
  id serial NOT NULL,
  name text,
  actual boolean DEFAULT false,
  CONSTRAINT my_table_pkey PRIMARY KEY (id),
);

如何设置仅一行可以将actual标志设置为TRUE的约束?

最佳答案

您只能在该列上为唯一值创建唯一索引:

create unique index on my_table (actual)
where actual = true;

SQLFiddle:http://sqlfiddle.com/#!15/91f62/1

关于sql - PostgreSQL约束-仅一行可以设置标志,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28166915/

10-13 04:43