列名が可変の場合は、動的SQL :
set @strokes_hole_10 = 6;
set @x = 10;
set @strokes = concat('@strokes_hole_',@x); -- add @ to variable string
-- generate the query string
set @query_str = CONCAT('SELECT ', @strokes);
-- prepare statement using the query string
Prepare stmt From @query_str;
-- executes the prepared statement
Execute stmt;
-- clean up after execution
Deallocate Prepare stmt;
結果
| @strokes_hole_10 |
| ---------------- |
| 6 |