Sie können eine vorbereitete Anweisung in Ihrer gespeicherten Prozedur verwenden, mit der Sie eine Zeichenfolgenabfrage ausführen können:
Als einfaches Beispiel:
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 ;
Testen Sie es mit dieser SQLFiddle-Demo