任何人都可以使用此代码来帮助我吗?错误代码:1242.子查询返回多于1行 - 函数
DROP FUNCTION IF EXISTS dislike;
DELIMITER //
CREATE FUNCTION dislike(disliked_id int(11)) RETURNS CHAR
BEGIN
DECLARE disliked_songs CHAR;
IF disliked_id = 1 THEN
SET disliked_songs = (SELECT song_title from songs
where like_flag IN (SELECT like_flag from songs where like_flag= 1));
ELSE
SET disliked_songs = (SELECT song_title from songs
where like_flag IN (SELECT like_flag from songs where like_flag= 0));
END IF;
RETURN disliked_songs;
END;
//
DELIMITER ;
select dislike(1);
我试图调用功能,但这样做会返回一个错误
不要害羞。什么是错误? –
你认为这些查询究竟做了什么? – Uueerdo
很明显,函数的返回值是单个“char”。返回变量'disliked_songs'不会是char。 –