ゲームに関するいくつかの統計を含むテーブル (50 以上) に多数の列グループがあります。
統計を単純化しているので、次の 2 つのことを行います。
- 名前に「%_nd%」が含まれる列を削除します
- 列名から文字列「_er」を削除します。
これを自動的に行う簡単な方法はありますか、それともすべての列名を手動で入力する必要がありますか?
ゲームに関するいくつかの統計を含むテーブル (50 以上) に多数の列グループがあります。
統計を単純化しているので、次の 2 つのことを行います。
これを自動的に行う簡単な方法はありますか、それともすべての列名を手動で入力する必要がありますか?
Well you can do the first by running the following and using the SQL it produces:
select distinct concat('alter table ',table_name,' drop column ',column_name) someSql
from information_schema.columns
where column_name like '%_nd%'
You could do the second with a similar query:
select distinct concat('alter table ',table_name,' change ',column_name, ' ', replace(column_name, '_er', ''), ' ', data_type, case when CHARACTER_MAXIMUM_LENGTH is not null then concat('(', CHARACTER_MAXIMUM_LENGTH, ')') end) someSql
from information_schema.columns
where column_name like '%_er%'