この制約に必要なトリガーのタイプにこだわっています。
代金と手数料を頂きます。価格によってコミッション額が決まります。< 100 - 4%、< 200 - 5% など。
私の考え。データベースには、101、201、401、601 の 4 つの価格値を保持する別のテーブルが含まれており、それぞれに一致するコミッション % があり、これは PC と呼ばれます。物件リストを作成するときに、入力した価格に応じて得られる手数料を計算したいと考えています。
挿入時に、new.price をチェックして PC の価格と比較する必要があります。new.price が price tuple 未満になったら、価格をそのコミッション値に設定します
create or replace TRIGGER findCommission BEFORE INSERT OR UPDATE ON HASLISTING
FOR each ROW
BEGIN
IF (:NEW.ASKING_PRICE < 100001) THEN
:NEW.COMMISSION = 6.0;
END IF;
IF (:NEW.ASKING_PRICE < 250001) THEN
:NEW.COMMISSION = 5.5;
END IF;
IF (:NEW.ASKING_PRICE < 1000001) THEN
:NEW.COMMISSION = 5.0;
END IF;
IF (:NEW.ASKING_PRICE > 1000000) THEN
:NEW.COMMISSION = 4.0;
END IF;
END;