我的网站有类别过滤器,因为很多,网站很慢。
每个过滤器通过主数据库返回一个结果表。
有谁知道任何更快的技术?
每个过滤器都是主表中的一个查询,包含 6,000 条记录
几个网站按类别使用此功能结果,但我想知道如何更优化地做到这一点。
解决方案:
我只使用返回所有寄存器的查询,并使用 php 函数处理数组以返回每个过滤器的寄存器总数。
简化伪代码:
$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'];