【发布时间】:2016-08-03 01:47:40
【问题描述】:
我正在尝试创建一个 mysql 函数,其条件是我必须在参数中包含某个单词才能使其工作
CREATE FUNCTION hello (s CHAR(20)) RETURNS CHAR(50)
DETERMINISTIC
IF s = NULL
THEN RETURN CONCAT('Hello World!')
所以如果查询是
SELECT hello(NULL);
那么它应该输出:
+--------------------+
| hello(NULL) |
+--------------------+
| Hello Hello World! |
+--------------------+
否则不应返回任何行
当我尝试执行上面的代码时,它总是返回语法错误。问题是我不太擅长创建 mysql 函数,尤其是在有条件的情况下
附言
我尝试了这段代码,但出现以下错误
mysql> CREATE FUNCTION hello (s CHAR(20)) RETURNS CHAR(50)
-> DETERMINISTIC
-> IF s IS NULL
-> THEN RETURN CONCAT('Hello World!');
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 4
【问题讨论】:
标签: mysql