对两个不同列组合的约束

时间:2017-01-06 15:03:30

标签: sql postgresql

我在这里有点失落。

我在常规rdbms上有一个包含4列的表(确切地说是postgres)

列是:: A1,B1,A2,B2

我不希望a1,b1的组合与a2,b2

相同

我知道我可以使用触发器来实现它。

但问题是, 是否有一种简单的方法可以使用表上的简单约束来实现它?

或者我真的不得不求助于使用触发器验证吗? 我当然使用简单表约束选项:)

1 个答案:

答案 0 :(得分:2)

如果我理解正确,您可以使用检查约束:

alter table t
    check (a1 is distinct from a2 or b1 is distinct from b2)