MySQL IN条件限制

xpe*_*int 66 mysql conditional-statements

嘿,我必须在我的MySQL语句中使用IN条件和一大组id.

SELECT * FROM users WHERE id IN (1,2,3,4...100000)
Run Code Online (Sandbox Code Playgroud)

如果IN语句可以有项目,是否有限制?

Pro*_*man 90

没有,请查看有关IN功能手册:

IN列表中的值数量仅受max_allowed_pa​​cket值的限制.


Sac*_*hag 15

据我所知,在mysql中,IN语句中的项目没有限制.

在oracle中,IN语句中限制了1000个项目.

但是更多的项目IN,您的查询性能将减慢,除非该列被索引.

  • 取决于,如果IN是搜索主键,则快速原因是从索引返回 (3认同)