MySQL - 独一无二的豁免

时间:2015-01-08 01:58:44

标签: mysql database constraints unique

mySQL中是否有任何方法可以在具有特定列特定值约束的多个列上指定UNIQUE约束?

示例:

A B
......
1 0
1 1
1 2
2 1
3 0
3 2

在上表中,如果B为0,则它​​可以在表中具有相同的值集(行)(重复),如果B为1,则它不应该接受同一组A,B对。 例如:在这种情况下,它应该接受任意数量的(A,B)=(1,0),(3,0)对,因为B是0,但它不应该接受(1,1)的重复,( 1,2),(2,1),(3,2)。

1 个答案:

答案 0 :(得分:1)

如果约束中的任何列值为NULL,则MySQL允许具有多列UNIQUE约束的重复项。也许你可以用NULL代替0。