tbl_emailsテーブル内の未送信の電子メールをすべて選択し、ステータスを「送信済み」に更新する必要があります。私はまずそれらを@tempに選択します。その後、ステータスを更新します。最後に、@ tempを選択します。MySQLエラー1241(21000):更新前に返されたエントリにオペランドが1列含まれている必要があります
CREATE DEFINER = [email protected] PROCEDURE get_unsent_emails()
SET @temp = (SELECT * FROM tbl_emails WHERE email_sent = 0);
UPDATE tbl_emails
SET email_sent = 1
WHERE email_sent = 0;
SELECT @temp;
は、私は次のエラーを取得する:
MySQL ERROR 1241 (21000): Operand should contain 1 column(s)
〜ストアドプロシージャ内で一時テーブルを使用していないのはなぜ
@temp変数には、クエリで1つの列のみが含まれている必要があります。 –