文章详情页
索引 - 请教下Mysql大数据量的联合查询
浏览:168日期:2022-06-12 14:29:11
问题描述
现在有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, 这样的话 用第一种可能是很精确, 性能不知道会差多少,
第二种范围不是太精确
问题解答
回答1:你要查B表中新增字段,为什么第二种要用B表中结果去查A。第一种就可以
相关文章:
1. $fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题2. python - 求一个在def中可以实现调用本def满足特定条件continue效果的方法(标题说不太清楚,请见题内描述)3. mysql - SQL操作时间的函数?4. angular.js - angularjs的自定义过滤器如何给文字加颜色?5. MYSQL新建用户设置可以远程访问的问题6. java - mybatis怎么实现在数据库中有就修改,没有就添加7. 正则表达式 - python pandas的sep参数问题8. docker内创建jenkins访问另一个容器下的服务器问题9. javascript - 用表单提交两个时间段请求后台返回对应数据时出现的一些问题!10. docker api 开发的端口怎么获取?
排行榜
![$fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题](http://www.haobala.com/attached/image/news/202205/093622cb60.png)