Puede crear una instrucción SQL dinámica y ejecutarla:
SET @tablename = 'MyTable';
SELECT @query := CONCAT('RENAME TABLE `', @tablename, '` TO `',
CURDATE(), @tablename, '`');
PREPARE STMT FROM @query;
EXECUTE STMT;
El curdate()
la función devuelve la fecha actual como cadena en el formato yyyy-MM-dd
.
PD No puede ejecutar declaraciones de varias líneas como esta desde el navegador de consultas, pero puede ponerlas en un archivo (por ejemplo, llamado commandfile.sql
) y ejecútelos como:
mysql -u <user> -p<password> <dbname> < commandfile.sql