Tôi nghĩ cách giải quyết là đặt điều này thành trước khi kích hoạt và cập nhật bản ghi đang được chèn trước khi chèn.
Vì vậy,
CREATE
/*!50017 DEFINER = 'admin'@'%' */
TRIGGER `trigger_liability_detail_after_insert` BEFORE INSERT ON `liability_detail`
FOR EACH ROW BEGIN
DECLARE SortOrder INT;
IF NEW.liability_category_id = 1 OR NEW.liability_category_id = 2 THEN
SET NEW.seq = 1 + IFNULL((SELECT MAX(seq) FROM liability_detail WHERE analysis_id = new.analysis_id AND liability_category_id IN (1, 2)), 0);
END IF;
END;
$$
Đó là một bản sao / dán nhanh, nhưng nó phải là một cái gì đó dọc theo những dòng đó.