col1 不能与 col2 相同的 Postgres 约束
Postgres constraint where col1 cannot be identical to col2
例如,
如果 col1 代表 玩家 1,
col2代表player 2,
如果两人一起玩,玩家2不能和玩家1.
我不想添加这两个玩家只能互相玩一次的约束,我只想将该约束应用于每一行。
这可以做到吗?
根据您的描述,这似乎是一个简单的检查约束:
alter table the_table
constraint different_players
check (player_1 <> player_2);
如果这些列可以包含 NULL 值,那么可能:
alter table the_table
constraint different_players
check (player_1 is distinct from player_2);
例如,
如果 col1 代表 玩家 1, col2代表player 2,
如果两人一起玩,玩家2不能和玩家1.
我不想添加这两个玩家只能互相玩一次的约束,我只想将该约束应用于每一行。
这可以做到吗?
根据您的描述,这似乎是一个简单的检查约束:
alter table the_table
constraint different_players
check (player_1 <> player_2);
如果这些列可以包含 NULL 值,那么可能:
alter table the_table
constraint different_players
check (player_1 is distinct from player_2);