我正在分類廣告網站上工作,並且我有關於檢索搜索結果的問題。如何使用PHP和MySql顯示來自不同類別的搜索結果
我的目標是顯示分類名稱旁邊的每個分類的分類數量。
例如:
- 紅色汽車(821)
- Android手機(291)
- 筆記本電腦(929)
什麼是讓這些計數的理想方式MySql數據庫表?
它是寫一個查詢到數據庫中的每個表?這對一個訪問者來說意味着很多查詢,並且可能會導致性能問題?
感謝
UPDATE:
我還沒有創建MySQL表還,所以如果它在計數了很大的作用隨意推薦理想的結構。
我正在分類廣告網站上工作,並且我有關於檢索搜索結果的問題。如何使用PHP和MySql顯示來自不同類別的搜索結果
我的目標是顯示分類名稱旁邊的每個分類的分類數量。
例如:
什麼是讓這些計數的理想方式MySql數據庫表?
它是寫一個查詢到數據庫中的每個表?這對一個訪問者來說意味着很多查詢,並且可能會導致性能問題?
感謝
UPDATE:
我還沒有創建MySQL表還,所以如果它在計數了很大的作用隨意推薦理想的結構。
我寧願有這種需求的一個查詢。
假設你有一個分類表和未分類的說產品,你應該能夠做這樣的事情:
Select C.Category, Count(P.Id) as ProductsCount
From Categories C left join Products P on C.Id = P.Category_Id
Group by C.Category
Order by C.Category
+1 - 良好,快速響應,而'LEFT JOIN'對於計算零產品類別非常有用。 – 2013-05-09 20:59:49
你可以做一個簡單的查詢使用COUNT(*)和組由類別ID /名稱。
SELECT Categories.name, count(*) as cnt
FROM Categories
LEFT JOIN Classifieds
ON Classifieds.CategoryID=Categories.ID
WHERE Classifieds.EndDate > NOW()
GROUP BY Categories.name
ORDER BY Categories.name
這將讓你所有的類別名稱,以及每個名稱的分類未結束的計數。
等待,你有每個類別單獨的表? – 2013-05-09 20:52:43
其實,還沒有創建數據庫:)我會更新問題 – 2013-05-09 20:54:22
我應該寫整個網站,讓咖啡? – 2013-05-09 20:56:13