在MySQL觸發器中判斷查詢結果是否存在,通常可以通過使用SELECT COUNT(*)來查詢符合條件的記錄數量,然后判斷數量是否大于0來判斷結果是否存在。以下是一個示例觸發器代碼:
DELIMITER //
CREATE TRIGGER example_trigger BEFORE INSERT ON table_name
FOR EACH ROW
BEGIN
DECLARE result_count INT;
SELECT COUNT(*) INTO result_count FROM table_name WHERE column_name = NEW.column_name;
IF result_count > 0 THEN
-- 查詢結果存在的邏輯處理
INSERT INTO log_table (message) VALUES ('Query result exists');
ELSE
-- 查詢結果不存在的邏輯處理
INSERT INTO log_table (message) VALUES ('Query result does not exist');
END IF;
END//
DELIMITER ;
在上面的示例中,觸發器在插入數據之前查詢表中是否存在與NEW.column_name相同的記錄,然后根據查詢結果的數量來進行邏輯處理。如果查詢結果存在,則向log_table表中插入一條記錄表示查詢結果存在;如果查詢結果不存在,則向log_table表中插入一條記錄表示查詢結果不存在。您可以根據實際需求修改觸發器代碼邏輯。