错误1111:insert触发器上的mysql

错误1111:insert触发器上的mysql,mysql,mysql-error-1111,Mysql,Mysql Error 1111,我试图理解为什么当我试图运行一个basin insert语句来测试这个问题时,这个触发器总是给我一个关于无效使用分组函数的错误 我试着用这个来找出我做错了什么,但错误仍然是一样的。错误1111 DROP TRIGGER a_num; DELIMITER // CREATE TRIGGER a_num BEFORE INSERT ON test_a FOR EACH ROW BEGIN DECLARE last INT DEFAULT 0; INSERT INTO test_b SET fu

我试图理解为什么当我试图运行一个basin insert语句来测试这个问题时,这个触发器总是给我一个关于无效使用分组函数的错误

我试着用这个来找出我做错了什么,但错误仍然是一样的。错误1111

DROP TRIGGER a_num;
DELIMITER //
CREATE TRIGGER a_num BEFORE INSERT ON test_a

  FOR EACH ROW BEGIN
DECLARE last INT DEFAULT 0;
INSERT INTO test_b SET full_name = CONCAT_WS(' ', NEW.f_name, NEW.l_name);
SET last = COUNT(id);
UPDATE test_b SET number = CONCAT_WS('-',  last, LEFT(NEW.f_name, 2), LEFT(NEW.f_name, 2)) WHERE id = last;
END;
//
请不要介意使用或不良的建设我相当新手

谢谢。

我想应该是-

DROP TRIGGER a_num;
DELIMITER //
CREATE TRIGGER a_num BEFORE INSERT ON test_a

FOR EACH ROW BEGIN
    DECLARE last INT DEFAULT 0;
    INSERT INTO test_b SET full_name = CONCAT_WS(' ', NEW.f_name, NEW.l_name);
    SET last = LAST_INSERT_ID();
    UPDATE test_b SET number = CONCAT_WS('-',  last, LEFT(NEW.f_name, 2), LEFT(NEW.f_name, 2)) WHERE id = last;
END;
//

您能否提供测试_a的CREATE语句和正在使用的INSERT语句

在MySQL Workbench中,如果右键单击test_,则转到“复制到剪贴板”。Create语句将发送表定义

插入并更新同一记录是否有原因?你能把这个合并成一个插页吗