誰でもこのコードを教えてもらえますか?エラーコード: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ではありません。 –