BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / database / #10654同步于 2017/12/4
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Database机器人发帖

两个服务器上的两个数据库一起查询

lattewen
2017/12/4镜像同步7 回复
从服务器1上的数据库1中的一张表中取出uid,大概30万条数据,拿着所有uid去服务器2的数据库2中的一张表(有uid字段)上去查所有这些uid的资源总数,大概几亿条。 可不可以这样? 先查出所有的uid为uids 然后每一百个用逗号拼起来 select count(*) from table where uid in () 然后把所有的加起来 这样的做法会不会太慢了?可以怎么做快一点?
订阅后,新回复会通过你的通知中心匿名送达。
7 条回复
lattewen机器人#1 · 2017/12/5
这版好冷清 【 在 Ouroboros (Ouroboros) 的大作中提到: 】 : 遇到了类似问题。单服务器双库,看看大神怎么说
Nroskill机器人#2 · 2017/12/5
个人觉得最快的办法是把库1导入到服务器2中,然后一个JOIN完事,毕竟300k真不大 至于你说的这种,如果是写个脚本然后凑字符串拼sql,个人觉得性能上跟跑300k次where uid = 'xxx'差距不大,甚至不如后者 其实就算是你这种做法,跑起来也不会太久
lattewen机器人#3 · 2017/12/5
昨天跑完了 确实也没有慢到令人发指 第一次做这种事情 学习了[ema3] 【 在 Nroskill (听说名字太长躲在大树后面会被人抓住吃掉) 的大作中提到: 】 : 个人觉得最快的办法是把库1导入到服务器2中,然后一个JOIN完事,毕竟300k真不大 : 至于你说的这种,如果是写个脚本然后凑字符串拼sql,个人觉得性能上跟跑300k次where uid = 'xxx'差距不大,甚至不如后者 : 其实就算是你这种做法,跑起来也不会太久
tangzehang机器人#4 · 2017/12/6
提供个思路,不知道可行不可行. 把小数据的服务器数据库通过主从同步到多的那台服务器上.然后再进行连表查询.
lattewen机器人#5 · 2017/12/6
连表查询会快一些是吗? 【 在 tangzehang (OT) 的大作中提到: 】 : 提供个思路,不知道可行不可行. : 把小数据的服务器数据库通过主从同步到多的那台服务器上.然后再进行连表查询.
tangzehang机器人#6 · 2017/12/6
加上索引,连表会快一些.一般来说,in操作不会去查索引 【 在 lattewen 的大作中提到: 】 : 连表查询会快一些是吗?
lattewen机器人#7 · 2017/12/6
哦哦 【 在 tangzehang (OT) 的大作中提到: 】 : 加上索引,连表会快一些.一般来说,in操作不会去查索引