0
美好的一天, 所以我一直在试图编写我的这个函数,允许我使用if函数检查并扣除一些数据。 我一直试图从互联网上反复阅读示例语法,但我似乎无法找到我的代码有什么问题!Mysql函数编码
继承人我所做的:
DELIMITER $$
USE `db`$$
DROP FUNCTION IF EXISTS `convertToRelatives`$$
CREATE DEFINER=`root`@`localhost` FUNCTION `BaseConverter`(n INT) RETURNS VARCHAR(100) CHARSET latin1
BEGIN
DECLARE s VARCHAR (100);
IF n - 32 >= 0
THEN SET s = 'Father'
AND n = n - 32;
IF n - 16 >= 0
THEN SET s = CONCAT(s, ', ', 'Mother')
AND n = n - 16;
END IF;
RETURN s;
END$$
DELIMITER ;
和进出口收到此错误:
错误代码:1064 您的SQL语法错误;检查对应于您的MySQL服务器版本的手册,以便在第13行的''附近使用正确的语法。
so ..究竟是什么错误?
什么,我试图做的是:
使用函数获取输入号码,并返回一个连接字符串。
我的公式是:
if n-32 >=0 then s = 'father'
if n-16 >=0 then s = CONCAT(s,',','Mother')
if n-8 >=0 then s = CONCAT(s,',','Brother')
if n-4 >=0 then s = CONCAT(s,',','Sister')
if n-2 >=0 then s = CONCAT(s,',','Others')
帮助?
仍然会出现这些空白错误。编辑:将再次尝试.. –
@ jamescastillo,请参阅答案中的更新。您还必须更正其他if语句。 – Rahul
非常感谢你的回答,我不相信我错过了。 –