为了账号安全,请及时绑定邮箱和手机立即绑定

关于sql优化

关于sql优化

PHP
小怪兽爱吃肉 2019-03-17 13:01:19
现在我有一个数组,里面大概有10万的数据,都是personId,我现在需要用这个ID去另一个表里查询其他数据,有没有什么好的办法,可以使查询效率一些?IN可不可以使用,虽然用IN好写点,但是IN的性能不怎么样。不知道各位有没有一些好的方法
查看完整描述

4 回答

?
PIPIONE

TA贡献1829条经验 获得超9个赞

最简单的就是循环查询,这个简单方便但是效率不高,如果是项目的话,会影响性能。还有一种方法就是将数组分段然后组合查询数据库。这种方式会好点。。。

查看完整回答
反对 回复 2019-03-18
?
白衣染霜花

TA贡献1796条经验 获得超10个赞

1、用exists 代替 in
2、personId 创建索引 提升查询效率

查看完整回答
反对 回复 2019-03-18
?
慕沐林林

TA贡献2016条经验 获得超9个赞

IN不是首选,考虑效率第一的话,肯定是联表查询,你看看实际需求使用join.

查看完整回答
反对 回复 2019-03-18
?
慕运维8079593

TA贡献1876条经验 获得超5个赞

建议不用IN,可以新建一张表来保存这些personId,通过关联的方式查询。

查看完整回答
反对 回复 2019-03-18
  • 4 回答
  • 0 关注
  • 431 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信