由于一个公司属于多个分类,所以必须使用LIKE查询,LIKE速度快的只有全文索引了,我们看到Mysql支持FULLTEXT的全文索引,不支持中文,而正好company的分类列catids正好是全英文的,
所以,解决办法是:
1:进入PHPMYADMIN,修改company表结构,为catids列新建一个FULLTEXT索引。
2:修改Destoon网站目录下的module下的company下的list.inc.php ,将:
- $condition = "groupid>5 and catids like '%,".$catid.",%'";
改成
- $condition = "groupid>5 and MATCH (catids) AGAINST ( ',".$catid.",')";
3,找到
- $condition .= " AND catids like '%,".$catid.",%'";
修改成
- $condition .= " AND MATCH (catids) AGAINST ( ',".$catid.",')";
注意是两个地方,1个PC,1个WAP。
好了,大功告成,速度马上飞快!
执行 SQL语句
- ALTER TABLE `destoon_company` ADD FULLTEXT INDEX(`catids`)