SELECT DATEDEBUT, DATEFIN INTO DebutReserv2, FinReserv2 FROM RESERVATION WHERE IDCODEBARRES = v_codebarre ORDER BY DATEDEBUT LIMIT 0, 1;
RETURN(Concat(DebutReserv2, ",", FinReserv2));
If ((DebutReserv2 <= curdate()) and (FinReserv2 >= curdate())) THEN
RETURN(Concat(DebutReserv2, ",", FinReserv2));
这里有点问题。在第一次返回中,DebutReserv2 和 FinReserv2 有一个由第一个选择分配给它们的值,但是一旦我通过第一个 if,两个变量的值就会改变(而且我们在同一个循环中)。此代码也在游标中。