SELECTcol_name[,col_name] ... INTOvar_name[,var_name] ...table_expr
        SELECT ...
        INTO syntax enables selected columns to be stored
        directly into variables. The query should return a single row.
        If the query returns no rows, a warning with error code 1329
        occurs (No data), and the variable values
        remain unchanged. If the query returns multiple rows, error 1172
        occurs (Result consisted of more than one
        row). If it is possible that the statement may
        retrieve multiple rows, you can use LIMIT 1
        to limit the result set to a single row.
      
SELECT id,data INTO x,y FROM test.t1 LIMIT 1;
User variable names are not case sensitive. See Section 8.4, “User-Defined Variables”.
        In the context of SELECT
        ... INTO statements that occur as part of events
        executed by the Event Scheduler, diagnostics messages (not only
        errors, but also warnings) are written to the error log, and, on
        Windows, to the application event log. For additional
        information, see Section 18.4.5, “Event Scheduler Status”.
      


User Comments
If you use table aliases, then you can get around the restriction of variable names to be different from referenced table column names, since you are avoiding ambiguity.
In the example above:
SELECT T.xname,id INTO newname,xid
FROM table1 T where ...
SELECT newname;
Returns the value of the xname column of table1.
Add your own comment.