我正在尝试使用 IF 编写一个函数,但出现错误
您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以获取正确的语法,以便在第 8 行代码 1064 的 '' 附近使用
这就是功能。
DELIMITER $$
DROP FUNCTION IF EXISTS `my_fun` $$
CREATE FUNCTION `my_fun` (nid INT) RETURNS VARCHAR(200)
BEGIN
DECLARE abc varchar(100);
SELECT foo INTO abc FROM my_table WHERE bar = nid;
IF abc = ''
THEN
SELECT foo INTO abc FROM my_table WHERE bar = -1;
RETURN abc;
END $$
DELIMITER ;
我不确定这里的语法是什么,我也试过了IF abc IS NULL
。我只想检查第一个选择语句是否返回空值然后执行另一个语句。