暂无图片
如何快速的从千万级别数据表查找多条数据
我来答
分享
zsh
2021-10-11
如何快速的从千万级别数据表查找多条数据

请教个问题:有1万个Id,从一个千万级别的数据表里面查,用什么方法比较快?盼赐复

我来答
添加附件
收藏
分享
问题补充
4条回答
默认
最新
猫瞳映月

可以通过有索引的字段查询比较快喔~

select * from 表名 where col='id3'

暂无图片 评论
暂无图片 有用 0
zsh
题主
2021-10-11
这个id 就是唯一主键
猫瞳映月
答主
2021-10-11
那你可以使用主键来查,这样最快。或者你需要查哪几条数据,然后去对应的字段上检索这些数据,如果对应的字段上有创建索引,查询会非常快,如果没有索引可能会很慢,您执行的时候可以看看执行计划。不懂的可以贴图到这里来,希望能帮到您,如果能解决请点个采纳,手动滑稽~
薛晓刚

只有有索引。用到了。别说千万级别。就是几十亿级别也是在毫秒级别。

暂无图片 评论
暂无图片 有用 0
Uncopyrightable

需要看表结构和sql语句,有没有列可以创建合适的索引方式,大部分可以看下执行计划,根据执行计划进行下一步优化;

看题目好像根据id方式创建索引不是合理方式,存在大量重复值,

暂无图片 评论
暂无图片 有用 0
阿毛

建一个临时表,只存这些ID值,然后分别在两个表上建上对应的索引,做个表连接就行。

类似于:select b.id,a.* from table1 a left join table2 b on a.id=b.id;

这个b表就是你建的临时表,a表就是要查询的表。

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏