如何重构超过 30 列的旧表

问题描述

在带有 MysqL 数据库的旧项目中有一个 tableWIDE(由于保密协议而匿名)。尽管没有冗余(至少可以这样假设),表 A 中的字段数量自最近 5 年以来已经增长到 30 多个。

因此,很难浏览和查询表中的数据。

问题:如何重构具有这么多字段的表格?

作为一名 Java 编码员,我正在考虑将这 30 多个字段分类并拆分为 3 个或更多更小的表,然后join 如果业务逻辑中需要所有这些字段 .例如,

在将表拆分成几个较小的表之前,有一个查询

select A,B,C,D,E,F,G,H,I,J,K,L,M,N from WIDE

而在拆分之后,等效查询将涉及join,例如

select p.A,p.B,p.C,s.D,s.E,s.F,t.G,t.H,t.I,t.J,t.K,t.L,t.M,t.N from PRIM p left join SEC s on ... left join THIRD t on ...`

但是,即使分离的小表是一对一基础,这种连接是否会影响性能

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)