Php 在我的网站上按类别筛选结果很慢
我的网站有分类过滤器,因为有很多,网站是非常缓慢的 每个过滤器返回主数据库的结果表 有人知道加快速度的技巧吗 每个筛选器都是主表中包含6000条记录的查询 一些网站按类别使用此功能结果,但我想知道如何更优化地使用此功能 解决方案: 我只使用一个返回所有寄存器的查询,使用php函数,我使用数组返回每个过滤器的寄存器总数 简化伪代码:Php 在我的网站上按类别筛选结果很慢,php,mysql,performance,filtering,categories,Php,Mysql,Performance,Filtering,Categories,我的网站有分类过滤器,因为有很多,网站是非常缓慢的 每个过滤器返回主数据库的结果表 有人知道加快速度的技巧吗 每个筛选器都是主表中包含6000条记录的查询 一些网站按类别使用此功能结果,但我想知道如何更优化地使用此功能 解决方案: 我只使用一个返回所有寄存器的查询,使用php函数,我使用数组返回每个过滤器的寄存器总数 简化伪代码: $cont = array(); $res = mysql_query("SELECT field FROM info"); while($x = mysql_f
$cont = array();
$res = mysql_query("SELECT field FROM info");
while($x = mysql_fetch_array($res)){
if ($x['field'] == "val1")
$cont['val1'] ++;
if ($x['field'] == "val2")
$cont['val2'] ++;
}
echo "Filter val1: ".$cont['val1'];
echo "Filter val2: ".$cont['val2'];
向我展示您的SQL查询,请简化查询,筛选器使用索引,而不使用order by。每个网站在下面的查询中都有一个过滤器。示例:Baú(100个结果)使用查询:从frete中选择COUNT(id)作为qtd,其中idtype=1;Caçamba(1.234个结果)使用查询:从frete中选择COUNT(id)作为qtd,其中idtype=2;Baixa等级(432个结果)使用以下查询:从FRET中选择计数(id)作为qtd,其中idtype=3;-过滤器每页有几个类别,大约35个我在“idtype”字段上有“index”-该网站有500名用户在线服务器设置:内存:8GB CPU:4x 1500 Mhz链接:4MBresultados西班牙语,查看结果?从frete(其中idtype=1)运行解释选择计数(id)作为qtd,从frete(其中idtype=2)运行解释选择计数(id)作为qtd,并将输出结果发布到巴西葡萄牙语中。查询:解释选择计数(id)作为FRET的qtd,其中codtype=14;结果:选择类型:简单型;表:FRET;类型:ref;可能的_键:特别;重点:特殊性;重点:4;参考:常数;第2.344行;密码,否则就不会发生