VARIANTCOMBINATIONRULE

VARIANTCOMBINATIONRULE

我有一个表,用于定义两个变体之间的规则:

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));

07-27 23:39