我有两个表用于存储调用详细信息。一个表(call_Detail)存储输入的每个调用的标头详细信息,第二个表(call_History)存储调用的每个注释。因此,单个调用在call_Detail表中只出现一次,但可能在call_History表中出现多次。
我当前运行一个Query,返回一组调用的最新注释。因此,我从Call_Detail中返回标头详细信息,然后对照Call_History进行交叉引用,以查找“最新”注释(感谢一些外部帮助)。但是,当对大量调用运行时,此查询可能会非常耗时。
因此,我想优化我的查询,我想设置一个记录这些细节的触发器。
我想将任何INSERT命令捕获到Call_History表中,并根据相关的调用ID将注释和日期/时间记录到Call_Detail表中。
到目前为止,我有以下内容,但出于某种原因,它不喜欢我的语法:
DELIMITER $$
CREATE TRIGGER Last_Call_Update
AFTER INSERT ON call_history
FOR EACH ROW
BEGIN
UPDATE call_detail
SET last_updated = NEW.updated_at, last_commment = NEW.body
WHERE id = NEW.ticket_id
END $$
DELIMITER ;