Copying to tmp table SELECT DISTINCT(b.goods_id) FROM `ecsho

2016-07-07 15:01 来源:www.chinab4c.com 作者:ecshop专家

localhost:2205ecshopQuery9Copying to tmp tableSELECT DISTINCT(b.goods_id) FROM `ecshop`.`ecs_goods_attr` AS a, `ecshop`.`ecs_goods_attr` AS b, `ec
这到底属于什么情况????
cpu占用率极高,要2分钟才反应过来。

回答:
有可能的话,你对SQL足够熟悉的话。确实可以对这条SQL进行优化

熟悉的话就不上这里问了。

不至于会这样的~最好贴个完整的SQL语句,我之前写个文章函数查询条件也很多~也不会出现这个情况~

楼上的,你没经历过啊。

还是没人回答。。

我的tmp_table_size=16M,都不会出现这个情况!查询条件绝对不比你的少!

不是查询条件的问题
而是他数据库设计就有缺陷
不信的话 explain 看看就知道
一个 700商品 的店铺,有 5000个属性的话,
explain SELECT DISTINCT(b.goods_id) FROM `es_goods_attr` AS a, `es_goods_attr` AS b, `es_goods` AS g WHERE b.attr_value = a.attr_value AND b.attr_id = MMM AND a.goods_attr_id = NNN;

会很慢的

5000个属性
干嘛啊