SELECT 文で得た結果を変数に代入する

メモ:  Category:mysql

ストアドプロシージャ内で SELECT 文から得た結果を変数へ代入するには SELECT … INTO を使用します。

MySQL のマニュアルには、「 SQL 文で使用する変数名は、項目名と違う名前を使う」よう 注意書きされています。

CREATE PROCEDURE PROC_USERCOUNT (name CHAR(16))
BEGIN
    DECLARE ucount INT;
    SELECT COUNT(*) INTO ucount FROM mysql.user WHERE User = name;
END

SELECT INTO は、複数項目代入することも出来ます。その場合、カンマで区切って指定します。

SELECT id,user INTO userid,username 
    FROM table1 WHERE id = '0001';

bluenote by BBB