And*_*eko 3 postgresql constraints
我有以下限制:
ALTER TABLE my_table
ADD CONSTRAINT no_overlap EXCLUDE USING gist (
product_id WITH =,
applicable_period WITH &&
)
Run Code Online (Sandbox Code Playgroud)
现在我意识到,这应该只进行有条件的检查,例如
ALTER TABLE my_table
ADD CONSTRAINT no_overlap EXCLUDE USING gist (
product_id WITH =,
applicable_period WITH &&
)
WHERE my_table.user_id IS NULL
Run Code Online (Sandbox Code Playgroud)
这是否可能,否则我怎样才能以有效/建议的方式实现这一目标?(我可以添加一个触发器,但我希望有更优雅/有效的方法)。
我应该诉诸表分区吗?谢谢
小智 6
根据手册,你只需要括号:
ALTER TABLE my_table
ADD CONSTRAINT no_overlap
EXCLUDE USING gist (product_id WITH =, applicable_period WITH &&)
WHERE (user_id is null);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1781 次 |
| 最近记录: |