Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用PHP和MySql显示不同类别的搜索结果_Php_Mysql_Search - Fatal编程技术网

如何使用PHP和MySql显示不同类别的搜索结果

如何使用PHP和MySql显示不同类别的搜索结果,php,mysql,search,Php,Mysql,Search,我在一个分类广告网站工作,我有一个关于检索搜索结果的问题 我的目标是在类别名称旁边显示每个类别中的分类广告数量 例如: 红色汽车(821) 安卓手机(291) 笔记本电脑(929) 从MySql数据库表中获取这些计数的理想方法是什么 是否要向数据库中的每个表写入一个查询?这意味着一个访问者需要进行大量查询,可能会导致性能问题 谢谢 更新: 我还没有创建MySql表,所以如果理想结构在计算中起着重要作用,请随意推荐它。我更希望有一个查询来满足这一需求 假设您有一个Categories表,并且没

我在一个分类广告网站工作,我有一个关于检索搜索结果的问题

我的目标是在类别名称旁边显示每个类别中的分类广告数量

例如:

  • 红色汽车(821)
  • 安卓手机(291)
  • 笔记本电脑(929)
从MySql数据库表中获取这些计数的理想方法是什么

是否要向数据库中的每个表写入一个查询?这意味着一个访问者需要进行大量查询,可能会导致性能问题

谢谢

更新:


我还没有创建MySql表,所以如果理想结构在计算中起着重要作用,请随意推荐它。

我更希望有一个查询来满足这一需求

假设您有一个Categories表,并且没有分类广告,那么您应该能够执行以下操作:

    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

您可以使用count(*)和category id/name进行简单查询

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

这将为您提供所有类别名称以及分类尚未结束的每个名称的计数。

等等,您是否为每个类别提供了单独的表格?实际上,尚未创建数据库:)我将更新问题我是否要写整个网站并为其煮咖啡?是的,请-milk和1 thxDagon:嗯,对不起,我只是在做我后悔的事之前先问一下;这个网站不是在征求其他程序员的意见吗?+1-反应良好,反应迅速,
左连接是计算零产品类别的好方法。