作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在 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/
我是一名优秀的程序员,十分优秀!