2014-06-10 98 views
0

我使用MySQLi准备好的语句。哪个更好:SELECT ... WHERE`row` IN(...,...)with prepared statements?

  1. WHERE row=?和执行多次,多值
  2. WHERE row IN (?, ?, ?)绑定多次,多值

编辑:表了〜20K行,我可能要在该领域寻找1-20k值(当然,所有20k都没有意义)。

+0

第二种解决方案是最好的:只有一个查询。 – kmas

+0

http://stackoverflow.com/questions/782915/mysql-or-vs-in-performance – bancer

+0

索引有问题的列并使用“IN” –

回答

0

我使用的IN一直比第一个更易读,更易维护。基于性能IN clause要好得多。

Read more here

0

IN是细它被优化。但请确保您使用索引 列。它在功能上等同于(其中:a = 1或a = 2或a = 3)。