db에 데이터를 삽입 할 때 이전 레코드와 현재 레코드를 비교해야합니다. neccassary 인 경우 현재 레코드의 일부 값을 수정해야합니다.MySQL 트리거 : 삽입 전에 이전 레코드와 레코드 비교
다음과 같이 일부 SQL을 시도했지만 모두 SQL 오류가 발생합니다. 이 하나는 나에게 하나 이상의 레코드를 선택한다는 오류를 준다.
DELIMITER $$
CREATE
TRIGGER set_moment_display
BEFORE INSERT ON data
FOR EACH ROW
BEGIN
DECLARE moment DATETIME;
SELECT press_moment_1 INTO moment FROM data LIMIT 1;
IF moment > NEW.press_moment_1 THEN SET NEW.press_moment_1 = moment;
END IF;
END$$
DELIMITER ;
위에서 설명한 내용을 어떻게 달성 할 수 있습니까?
업데이트 트리거에서만 작동하지 않습니까? 삽입물에는 이전 값이 없습니다. –
Ooopss ... 실수해서 미안해! 나는 지금 "이전에 INSERT" –