MYSQL查询WHERE IN vs OR [英] MYSQL query WHERE IN vs OR
本文介绍了MYSQL查询WHERE IN vs OR的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已经使用OR查询开发了一个系统:
I have developed a system using an OR query:
SELECT * FROM tableA
JOIN tableB ON (idA = idB)
WHERE idA = 1 OR
idA = 2 OR
idA = 3 OR
idA = 4 OR
idA = 5 ...... OR
idA=100
与查询IN比较:
SELECT *
FROM tableA JOIN tableB ON (idA = idB)
WHERE idA IN (1,2,3,4,5,......,100)
MYSQL数据库中最好的查询是什么?
What is the best query in a MYSQL database?
推荐答案
使用IN.
IN将使用索引.
OR(afaik)不会使用索引.
OR will (afaik) not use an index.
此外,这一点也不容忽视,IN版本:
Also, and this point is not to be sneezed at, the IN version:
- 使用更少的代码
- 更易于维护
- 更容易理解
仅出于这些原因,我准备为获得代码质量而遭受一点性能损失,但实际上您也获得了性能.
For those reasons alone I would be prepared suffer a little performance to gain code quality, but you actually gain performance too.
这篇关于MYSQL查询WHERE IN vs OR的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文