CREATE FUNCTION `work_exp`(id int(11)) RETURNS varchar(255)
BEGIN
DECLARE sid varchar(255)
SELECT group_concat(company_name) INTO sid FROM work_exp where studentid=id
IF(sid>0) THEN
RETURN (sid)
ELSE
RETURN ('0')
问问题
75 次
2 回答
4
声明失败的原因:
- 你没有改变分隔符
- 你还没有结束陈述
;
- 你还没有结束
IF
声明END
询问:
DELIMITER $$
CREATE FUNCTION `work_exp`(id int)
RETURNS varchar(255)
BEGIN
SET @sid := (SELECT group_concat(DISTINCT company_name)
FROM work_exp
where studentid=id);
IF (CHAR_LENGTH(@sid) <= 0 OR @sid IS NULL) THEN
SET @sid := 0;
END IF;
RETURN @sid;
END $$
DELIMITER ;
于 2013-02-28T04:31:05.073 回答
0
在返回之前关闭'If'语句
于 2013-02-28T04:32:38.893 回答