2013-01-15 69 views
0

我有一個應用程序可以爲工具頁面分類鏈接。在這個頁面上我想要有多個類別和這些類別下的每個工具。由於我將擁有13個類別(隨着工具的使用,更多),我不想爲每個類別運行查詢。我寧願運行一個查詢來獲取所有數據。PHP MySQL在單個查詢中查詢多個類別

現在我已經進行了頁面設置,以便通過下拉菜單顯示每個類別以查看工具。我需要做的是隻有這個類別的工具纔會出現。我在解決如何從單個查詢中查看所有數據的問題。

當前我正在使用while語句以數組形式運行結果。

while($tools = $result->fetch_assoc()){ 
    if($tools['id'] = 1){ 
     echo $tools['name']; 
    } 
} 

這只是我目前計劃做的基本模型。我不禁想,但是還有更好的方法可以解決這個問題。從MySQL獲取大量數據然後用PHP將其分爲多個類別的最佳方法是什麼?如果我需要運行多個單獨的查詢,但是我不希望爲每個類別運行查詢。

+0

你可以做一個左連接來獲得類別和工具在每一行,然後使用代碼從http://stackoverflow.com/questions/13442351/display-mysql-results-by-date –

回答

0

如果沒有性能問題,你可以使用這樣GROUP_CONCAT功能,

SELECT id,GROUP_CONCAT(name) 
FROM tools 
GROUP BY id 

你可以閱讀更多緊靠GROUP_CONCAT從MySQL官方網站here