在MySQL中,我需要重命名一个带有后缀的表,该后缀表示上个月,我正在尝试使用这种语法:
RENAME TABLE 'myTable' TO CONCAT('myTable',DATE_FORMAT(CURRENT_DATE - INTERVAL 1 MONTH, '%Y_%m'));
F.e:我的表名为“customers”,我想要的是“customer_2015_04”。
问题在于连续顺序。
我做错了什么?
致以最诚挚的问候,
答案 0 :(得分:2)
我认为您需要使用准备好的声明来执行此操作:
set @sql = CONCAT('RENAME TABLE myTable TO myTable',
DATE_FORMAT(CURRENT_DATE - INTERVAL 1 MONTH, '%Y_%m')
);
prepare s from @sql;
execute s;