我有一个用户定义的功能。
在该函数中,我声明了一个datetime类型的变量。
我将查询结果分配给此变量。我将返回此指定值。它看起来像
delimiter$$
drop function if exists getQEDate$$
create function getQEDate() returns datetime
begin
declare qedate datetime;
select date into qedate from qenddates where ....;
return qedate;
end$$
delimiter ;
当访问此函数时,我得到一个例外,例如“返回多行...”。 所以我认为在返回结果时发生了这个错误。这意味着变量qedate可以容纳多行。
以上分析是否有意义?
答案 0 :(得分:1)
可能是您的查询返回的行超过1行,并且无法将其存储到变量中。如果您只想要1行,则应检查where子句或在函数中将LIMIT 1添加到查询的末尾。
我猜是因为我看不到你的数据或你的where子句:)