gpt4 book ai didi

MySQL IF THEN AS 语法

转载 作者:行者123 更新时间:2023-11-29 15:42:24 30 4
gpt4 key购买 nike

我正在尝试通过存储过程填充表,如下所示:

SET @resultsCount = (SELECT COUNT(*) FROM tableA);
SET @i = 0;

WHILE @i < @resultscount DO
SET @revNum = 0;
INSERT INTO tableB (Name, revNumber, Meta)
SELECT
name AS Name,
(IF @i=0 THEN
SELECT @revNum;
ELSE IF <condition> THEN
SET @revNum = @revNum +1;
SELECT @revNum;
ELSE
SELECT @revNum;
END IF) AS revNumber,
meta AS Meta
FROM tableA;
SET @i = @i + 1;
END WHILE;

但是,上述 IF 语句由于语法错误而失败。我尝试过使用 IF 函数或 case 语句,但它们似乎只允许在每个条件之后执行单个语句,并且我需要在两个单独的语句中执行 SET,然后执行 SELECT。

最佳答案

通过使用ELSE IF,您开始一个新的IF语句,您永远不会END IF(您只END IF 一次)。将其更改为 ELSEIF :

IF @i=0 THEN  
SELECT @revNum;
ELSEIF <condition> THEN
SET @revNum = @revNum +1;
SELECT @revNum;
ELSE
SELECT @revNum;
END IF

关于MySQL IF THEN AS 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57466911/

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