Hvad du kan gøre er at bruge en forberedt sætning i din lagrede procedure, som giver dig mulighed for at udføre en streng-forespørgsel:
Som et simpelt eksempel:
DELIMITER //
CREATE PROCEDURE selname (IN col VARCHAR(20))
BEGIN
SET @sql = CONCAT('SELECT ', col, ' FROM tbl');
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
END//
DELIMITER ;
Test det af med denne SQLFiddle-demo