假设查询多个条件,
select AA.*,BB.* from AA left join BB on AA.key=BB.key
where AA.key='red' or AA.key='green' or AA.key='blue' or AA.key='pink'
比较
select AA.*,BB.* from AA left join BB on AA.key=BB.key
where AA.key IN ['red','green',blue',pink']
在 MYSQL 中,上述 2 个选项中的任何一个比另一个更快吗? 我知道使用“IN”更漂亮,但是速度有不同吗? (表在“键”上有索引)
我看到了this帖子,但没有关于速度的引用。
最佳答案
RJS IN 子句比 SQL 中的多个 OR 语句更快。
例如,如果您有 3 到 5000 条记录,那么 IN 查询将比多个 OR 语句快 5(大约)时间。
关于php - mysql where 子句使用 'IN"或多个 'OR',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27442716/