gpt4 book ai didi

MySQL 创建一个有条件的函数

转载 作者:太空宇宙 更新时间:2023-11-03 11:46:06 24 4
gpt4 key购买 nike

我正在尝试创建一个 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

最佳答案

你的函数有几个语法错误:

 DELIMITER &&

CREATE FUNCTION hello (s CHAR(20)) RETURNS CHAR(50)
DETERMINISTIC
BEGIN
IF s IS NULL THEN
RETURN CONCAT('Hello World!');
END IF;
END&&

DELIMITER ;
  • 尝试定义一个分隔符
  • 在函数体中使用beginend
  • if 子句需要end if
  • = null 应该是 is null

关于MySQL 创建一个有条件的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38733044/

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