执行语句,发现仓储表wh_warehouse全表扫描
EXPLAIN
SELECT
*
FROM
wh_inbound_order_detail e
LEFT JOIN wh_warehouse ww
ON ww.id = e.warehouse_id
WHERE ww.isGs = 0
AND ww.is_jiancai = 0
明明有索引的啊,为什么呢?只有主键索引的时候没没匹配到,那么干脆在创建个联合索引吧,没想到还是没匹配到。
下面这样写就可以了。因为主键没有匹配到的情况下,ww.isGZ 和 ww.is_jiancai 都是NULL。
EXPLAIN
SELECT
*
FROM
wh_inbound_order_detail e
LEFT JOIN wh_warehouse ww
ON ww.id = e.warehouse_id
AND ww.isGs = 0
AND ww.is_jiancai = 0
看一下两张表的编码是不是一样的
最左原则