数据库为mysql
原SQL如下
SELECT DISTINCT
d.ID,f.USERID
FROM
ORGUSER f
JOIN DM_QX_SWRYSF a ON f.USERID = a.SWRY_DM
JOIN QX_JGGW_SWRYSF b ON b.SWRYSF_DM = a.SWRYSF_DM
JOIN QX_SWJG_GW c ON b.GWXH = c.GWXH
JOIN ORGROLE d ON c.GW_DM = d.ROLENO
left JOIN ORGUSERMAP e ON e.ROLEID = d.ID and e.userid=f.userid
WHERE d.ID IS NOT NULL AND e.ID IS NULL
最后一步关联ORGUSERMAP 前,查询速度约在3-4秒,数据量为13万,ORGUSERMAP数据量也在13W左右
我要比对前面的结果集和后面的ORGUSERMAP表,找到ORGUSERMAP中不存在的数据。
目前查询时间超过20分钟,另外我也试过把最后的关联ORGUSERMAP改成not exist,执行时间也超过20分钟。
关联查询用到的字段我已经都添加了索引。
我数据库玩的少,是在不知道怎么优化了,求指导。