MySQL的一个问题,菜鸟求教

hhh871030 2013-01-05 07:20:16
下面这个语句错误了。。。。求教

DELIMITER $$
CREATE FUNCTION GetKnowledgeSortIdByKLId
(
ObjectId INT,
TYPE INT
)
RETURNS NVARCHAR(4000)

BEGIN

DECLARE str NVARCHAR(4000);
SET str = '' ;

SELECT str = str + ',' + CAST(r.SortId AS CHAR(10))
FROM dbo.KL_Re_Knowledge_Sort r
LEFT JOIN KL_KnowledgeSort ON KL_KnowledgeSort.SortId= r.SortId
WHERE r.ObjectId=ObjectId AND r.Type=TYPE AND KL_KnowledgeSort.IsDelete=0
ORDER BY r.SortId;

IF ( LENGTH(str) > 1 ) THEN

SET str = RIGHT(str, LENGTH(str) - 1) ;
END IF;
RETURN(str);
END $$



错误代码: 1415
Not allowed to return a result set from a function
...全文
91 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ACMAIN_CHM 2013-01-05
  • 打赏
  • 举报
回复
SELECT str := str + ',' + CAST(r.SortId AS CHAR(10))
rucypli 2013-01-05
  • 打赏
  • 举报
回复
Not allowed to return a result set from a function ORDER BY r.SortId后面加个limit 1

56,940

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧