To, co możesz zrobić, to użyć przygotowanej instrukcji w ramach procedury składowanej, która umożliwi wykonanie zapytania łańcuchowego:
Jako prosty przykład:
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 ;
Przetestuj to za pomocą tej Demo SQLFiddle