鉴于数据库中有5,000个记录获取ID,您认为哪个查询更快?查询优化:哪种SELECT语法更快?
遍历使用PHP,并执行为每一个SELECT查询5000点的ID,
foreach($ids as $id){ // do the query $r = mysql_query("SELECT * FROM TABLE WHERE ID = {$id}"); }
或收集阵列中的所有的ID,并使用SELECT * FROM TABLE WHERE ID IN(1向上到5000)
//assuming $ids = array(1,2 ---- up to 5000); $r = mysql_query("SELECT * FROM TABLE WHERE ID IN (".join(",",$ids).")");
你测试了它......? – deceze 2010-08-05 08:41:01
这是特定于MySQL吗?创建一个表,填充它,然后测量。数据胜过观点。 – Manfred 2010-08-05 08:41:48
@ 0xA3令人惊叹的评论。 – 2010-08-05 08:52:56