微擎删除分类无法删除解决-select in效率低解决办法

今天朋友微擎后台微网站里的分类要删除,可是怎么删除也不能删除,同样的系统另一套却可以迅速删除。

后来查询到是查询语句的问题,朋友的平台用户量太大,数据太大,用了以下语句,造成效率太低:

SELECT icon, id FROM `ims_site_nav` WHERE id IN (SELECT nid FROM `ims_site_category` WHERE id = 1089 OR parentid = '1089')

由于是mysql5.5版本,in语句执行效率太低,经常刘剑大牛指导,有以下两种解决方法:

1、

SELECT A.icon,a.id
FROM ims_site_nav A, ims_site_category B
WHERE A.id = B.nid and (B.id=1089 OR b.parentid=1089)

2、给ims_site_category 表的 nid 和 prrendid 字段加索引。

到此问题得到解决,可以正常删除分类。

原文地址:https://www.cnblogs.com/jeib/p/6009845.html