2011-10-30 108 views
0

當我使用數組mysql查詢它真的很慢。有什麼技巧可以讓這個更快嗎?在php中的數組mysql查詢

e.g:

SELECT * 
    FROM posts 
    WHERE type IN ('1','2','5') 
ORDER BY id ASC 

花費更長的時間,然後其他查詢。

+2

索引?只返回你實際需要的列 - 不是全部。 –

+1

做一個解釋,看看發生了什麼 – david

+4

這不是一個數組 – NullUserException

回答

0

如果typeinteger類型,然後刪除撇號:

WHERE type IN (1, 2, 5) 

如果沒有 - 改變type類型integer

0

有一些事情要加快我會考慮找了以下查詢:

正常化。也許你的表格結構不是最高效的?

索引。如果你知道你想要搜索什麼,這將改善查詢時間。

0

EXPLAIN會告訴你爲什麼你的查詢很慢。基於此,您可以對查詢或表結構進行調整以解決問題。在這種情況下,像這樣使用:

EXPLAIN SELECT * FROM posts WHERE type IN (1,2,5) ORDER BY id ASC

0

在這裏,你需要看兩個東西 首先,(「1」,「2」,「5」)這串不整它應該是(1,2,5)。 其次,您可以在類型字段上應用索引。