gpt4 book ai didi

mysql - 在sql存储过程中使用两个IF THEN

转载 作者:行者123 更新时间:2023-11-29 20:55:23 25 4
gpt4 key购买 nike

我正在尝试在 MySQL Workbench 中创建存储过程。我需要检查某个标志是否等于 1。如果该标志等于 1,则按 FollowupDate 搜索,否则使用 QuoteDate

IF(qFollowup = 1) THEN
IF(pFromFollowupDate != '') THEN
BEGIN
SET @Main = CONCAT(@Main, ' AND DATE(q.FollowupDate) >= \'',pFromFollowupDate,'\' ');
END;
ELSE
IF(pFromDate != '') THEN
BEGIN
SET @Main = CONCAT(@Main, ' AND DATE(q.QuoteDate) >= \'',pFromDate,'\' ');
END;
END IF;
END IF;

当我尝试应用更改时,它说存在语法错误。

最佳答案

尝试:

DELIMITER //

CREATE PROCEDURE `sp_name`()
BEGIN
IF qFollowup = 1 THEN
IF pFromFollowupDate != '' THEN
SET @Main = CONCAT(@Main, ' AND DATE(q.FollowupDate) >= \'',pFromFollowupDate,'\' ');
ELSE
IF pFromDate != '' THEN
SET @Main = CONCAT(@Main, ' AND DATE(q.QuoteDate) >= \'',pFromDate,'\' ');
END IF;
END IF;
END IF;
END//

DELIMITER ;

关于mysql - 在sql存储过程中使用两个IF THEN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37682537/

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