gpt4 book ai didi

mysql - 这个触发器有什么问题?

转载 作者:行者123 更新时间:2023-11-29 03:43:27 25 4
gpt4 key购买 nike

我将 MySql 与 HeidiSql 一起用作 IDE。我有以下触发器:

BEGIN
declare blobpassed blob(50);
declare gid integer(10);
select lt.groupid into gid, GROUP_CONCAT(passed) into blobpassed from latest_tests lt
left join testcaseresults tcr on tcr.testcaseresultsid = lt.tcrid
left join grouping g on g.groupid = lt.groupid

where lt.tcrid = NEW.testcaseresultsid
group by lt.groupid;

if blobpassed REGEXP '[1,]+' THEN
update grouping g
set g.haspassed = 1
where g.groupid = gid;
END;

但它一直说 GROUP_CONCAT(passed) into blobpassed from latest_tests lt 周围存在语法错误。通常,这些错误意味着在此之前出现了错误(因此,在这种情况下,使用 gid)。但我不明白我做错了什么。

有人能告诉我我做错了什么吗?谢谢。

最佳答案

SELECT ... INTO “into”部分只写一次,有一个变量列表,所以正确的查询是:

select lt.groupid, GROUP_CONCAT(passed) into gid, blobpassed from latest_tests lt
left join testcaseresults tcr on tcr.testcaseresultsid = lt.tcrid
left join grouping g on g.groupid = lt.groupid
where lt.tcrid = NEW.testcaseresultsid

“into”部分也可以放在查询之后:

select lt.groupid, GROUP_CONCAT(passed) from latest_tests lt
left join testcaseresults tcr on tcr.testcaseresultsid = lt.tcrid
left join grouping g on g.groupid = lt.groupid
where lt.tcrid = NEW.testcaseresultsid
into gid, blobpassed

关于mysql - 这个触发器有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10147510/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com