开源软件供应链点亮计划,等你来!>>>
各位大佬: mysql A,B 两个库 分别有A1, B1 两个表. B1 字段 id =>[每日定时同步特定条数到]=> A1 表 字段 b_id .
A1大约 10万左右, B1 大约 100万.
此时有个需求, 要从 B1 中 根据[A1已同步] id + 另外多个字段 进行"分页" 查询.[A1 是有顺序的 ]
select * from B1 where name=xx and sex=xx and id in (1,2,3,4~~~[10万个]) limit 1,10
in的数据过大,查询个人社保缴费明细导致 max-package问题.
请问各位大mysql安装配置教程佬该问题 应该如何实现呢? [其他字段目前不能同步至A1]
回答
如果查询不是特别频繁查询电话号码,最简单方案,将in里面的数据先存到另外一张表,然后进行关联查询,查完再删除
A1 表的数据变化太频繁, 动态的 所以不好在B字段是什么意思库 做缓存表
1、先进行a1的分页
select id from a.a1 limit 1,10
2、把a1的分页结果在b1中查询
select * from b.b1 where id in (a1分页查询结果)
如果只用id 的话,sql数据库没有问题. 还有用B1 表的其他字段进行查询的. 此时 用a1的分页结果 可能不在 B1 的查询结果里面. 所以不大行
left join 啊、
使用inner join ,并且每次记录最后的id,提高分页性能
回复
@阿波勒 : 带上schma可以join,不过我感觉可能会性能不怎么好,具体表格制作excel教程没试过;这里问的是怎么实神祇领主时代现,最好的办法还是在B1上加一列用于判断迁移成功没有。两个库 哥哥, 一个库的话就简单了
selec查询电话号码t column from b where sex=xx and b_id in (select id from A grou查询车辆违章p by id limit 1,10)
这样会不会好一些
这两个表 属于两个库 还不是一个服务器上的. 没法直接关联查询
还是用扩展字段,存另一个表的ID,交叉直接查不现实。或者用图
回复
@阿波勒 : 为啥无法实时同bu,这里不是代码层面上的逻辑吗嗯. 原本A1 表除了 id 还有 一些特定B1的字段. 但是 A1表mysql安装变动频繁. B1表的 字段信息变更无法实时sync至 A1. 查询结果不准确 所以就去掉了其他字段. 这个还得再研究A表为左表查询,左连接+limit试试
你知道select * from table,难道不知道select * from database.tabmysql增删改查语句le 吗
两个库不在一个送情郎服务器字段上的话,这个不好使吧用子sql查询方式或者exsit方式
使用 FEDERATED 引擎建立联邦表
发表评论