110,533
社区成员
发帖
与我相关
我的任务
分享
CREATE OR REPLACE FUNCTION "dbo"."measurement_insert_trigger"()
RETURNS "pg_catalog"."trigger" AS $BODY$
DECLARE
id integer;
BEGIN
IF ( NEW."ReceivedTimestamp" >= DATE '2020-01-01' AND
NEW."ReceivedTimestamp" < DATE '2020-06-30' ) THEN
INSERT INTO dbo.orders_202001 VALUES (NEW.*);
ELSIF ( NEW."ReceivedTimestamp" >= DATE '2020-07-01' AND
NEW."ReceivedTimestamp" < DATE '2020-12-31' ) THEN
INSERT INTO dbo.orders_202002 VALUES (NEW.*);
ELSE
RAISE EXCEPTION 'Date out of range. Fix the measurement_insert_trigger() function!';
END IF;
RETURN NEW;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100
CREATE TRIGGER insert_measurement_trigger
BEFORE INSERT ON dbo."Orders"
FOR EACH ROW EXECUTE PROCEDURE dbo.measurement_insert_trigger();