In MySQL: How to pass a table name as stored procedure and/or function argument?
Prepared statements are what you need. CREATE PROCEDURE `test1`(IN tab_name VARCHAR(40) ) BEGIN SET @t1 =CONCAT(‘SELECT * FROM ‘,tab_name ); PREPARE stmt3 FROM @t1; EXECUTE stmt3; DEALLOCATE PREPARE stmt3; END $$