现在有A
表, 存着整个业务线最核心,也是最繁忙的数据, 线上大概数据量假设有10亿,几乎所有的并发都和这个表有关,最近业务需要, 我要加个字段,发现影响太大, 不能直接改, 折中方案是 新加个表B
, 存A
的ID
和需要加的那个字段
因为我没有线上数据库的权限,没法实际测试,所以我不清楚是用
SELECT * FROM A, B ON A.id = b.aid WHERE a.xx = 'zz' AND b.xx = 'zz'
还是先查B的一个大范围, 在用 B查找区间里的结果去查A, 这样的话 用第一种可能是很精确, 性能不知道会差多少,
第二种范围不是太精确
你要查B表中新增字段,为什么第二种要用B表中结果去查A。
第一种就可以