回答

收藏

PostgreSQL约束-只有一行可以设置标志

技术问答 技术问答 334 人阅读 | 0 人回复 | 2023-09-14

我有一个PostgreSQL表
3 c# ?1 J8 N% v; T5 ?8 O8 h0 d/ `+ iCREATE TABLE my_table(  id serial NOT NULL, name text, actual boolean DEFAULT false, CONSTRAINT my_table_pkey PRIMARY KEY (id),);如何设置一行?actual设置为标志的约束TRUE?- v! k0 j+ ?6 j  G7 ?- _
                                                               
% @; T% c' {1 D    解决方案:                                                                % @! P$ j8 Z+ Y) `, M+ T3 `* P
                                                                您只能为列表中的唯一值创建唯一的索引:2 c6 \$ K8 y. a5 [6 I/ C
create unique index on my_table (actual) where actual = true;SQLFiddle:http' x/ }1 n1 k4 X* U4 N
://sqlfiddle.com/#!15/91f62/1
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则