【发布时间】:2020-09-24 19:17:39
【问题描述】:
我需要一个跨越 2 列的 UNIQUE 约束,但在任何地方都允许 NULL 值。我有这个:
CREATE TABLE table_1{
COLUMN a INT SET DEFAULT NULL,
COLUMN b INT SET DEFAULT NULL
-- <insert constraint here>
}
一些例子:
a b
1 2
3 4
valid
a b
1 1
2 3
invalid
a b
1 2
1 3
invalid
a b
1 2
3 1
invalid
a b
1 2
3 NULL
valid
a b
1 2
3 NULL
4 NULL
NULL 5
valid
【问题讨论】:
-
澄清一下,您想防止任何单个值在所有行的
a或b列中出现多次? -
@Dai 就是这样
标签: sql postgresql database-design unique-constraint