mysqlnotin优化(mysql优化过程)
您好,今天小华来为大家解答以上的问题。mysqlnotin优化相信很多小伙伴还不知道,现在让我们一起来看看吧!
mysqlnotin优化(mysql优化过程)
mysqlnotin优化(mysql优化过程)
1、子查询优化策略对于不同类型的子查询,优化器会选择不同的策略。
2、1. 对于 IN、=ANY 子查询,优化器有如下策略选择:semijoinMaterializationexists2. 对于 NOT IN、<>ALL 子查询,优化器有如下策略选择:Materializationexists3. 对于 derived 派生表,优化器有如下策略选择:derived_merge,将派生表合并到外部查询中(5.7 引入 );将派生表物化为内部临时表,再用于外部查询。
3、注意:update 和 delete 语句中子查询不能使用 semijoin、materialization 优化策略看代码看的晕,给你个建议吧,就不仔细看你的东西了一个是做临时表,分别几个不同的条件放到几个临时表,然后一个语句进行总结处理另外一个就是,拆分,比如说一个表table你可以select from table a,table bwhere a.recdate=b.recdateselect sum(value1) as sum1,sum(value2) as sum2,recdatefrom table1where recdate = (select max(recdate) as max from table1)group by recdate。
本文到这结束,希望上面文章对大家有所帮助。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系 836084111@qq.com 删除。