我在MySQL表T1中有一堆列,其名称类似于
A/B
C/D
E/F etc
我想删除'/',以便名称为AB, CD, EF (etc)
是否有办法(查询)将所有这些重命名,而不是通过alter table
由于
答案 0 :(得分:2)
简单的方法是编写一个输出SQL的查询,然后将输出复制粘贴回命令行。
这样的事情:
select concat('alter table ', table_name, ' change ', column_name, ' ', replace(column_name, '/', ''), ' ', column_type, ';')
from information_schema.columns
where table_schema = 'mydbname'
and column_name like '%/%';
我测试了这个SQL并且它可以正常工作
答案 1 :(得分:0)
alter table table_name
change A/B AB varchar(20),
change C/D CD varchar(20),
change E/F EF varchar(20)