我有一个表,用于定义两个变体之间的规则:
CREATE TABLE VARIANTCOMBINATIONRULE
(
VARRECID0 NUMBER(10) NOT NULL,
VARRECID1 NUMBER(10) NOT NULL,
RULE NUMBER
);
ALTER TABLE VARIANTCOMBINATIONRULE ADD (
CONSTRAINT VARIANTCOMBINATIONRULE_PK
PRIMARY KEY
(VARRECID0, VARRECID1));
如何创建不允许“反向对”的约束?我的意思是,如果有变体12和14的记录,则不允许反向对(14和12)的新记录。
最佳答案
CREATE UNIQUE INDEX unique_cd0_cd1
ON VARIANTCOMBINATIONRULE (least(VARRECID0, VARRECID1), greatest(VARRECID0, VARRECID1));