我試圖創建一個具有條件的MySQL的功能,我一定字必須是在參數爲它工作的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的功能,特別是如果有條件句
PS
我想這個代碼,但我得到了以下錯誤
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
我嘗試了你的建議..但得到了一個錯誤..檢查我更新的問題 –