key | value | other
-----------------------------------
key1 | red | r1
key1 | blue | b1
key1 | blue | b2
key2 | green | g
key2 | yellow | y
In postgres, how do i define a constraint such that a value is only associated to one of the keys. Ex: red can only have key1, green can only have key2?
key | value | other
-----------------------------------
key1 | red | r1
key1 | blue | b1
key1 | blue | b2
key2 | blue | r4
key2 | yellow | y
This is not allowed because value blue is associated to key1 & key2.