最新下载
热门教程
- 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 - 8
 - 9
 - 10
 
MySql使用not in如何实现优化 MySql使用not in实现优化代码
时间:2022-06-29 08:58:00 编辑:袖梨 来源:一聚教程网
本篇文章小编给大家分享一下MySql使用not in实现优化代码,文中示例代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来一聚教程看看。
代码如下:
select 
  s.SORT_ID,
  s.SORT_NAME,
  s.SORT_STATUS,
  s.SORT_LOGO_URL,
  s.SORT_LOGO_URL_LIGHT
from SYS_SORT_PROMOTE s
  WHERE
    s.SORT_NAME = '必听经典'
    AND s.SORT_ID NOT IN ("SORTID001")
  limit 1;
表中的数据较多时这个sql的执行时间较长、执行效率低,在网上找资料说可以用 left join进行优化,优化后的sql如下:
select 
  s.SORT_ID,
  s.SORT_NAME,
  s.SORT_STATUS,
  s.SORT_LOGO_URL,
  s.SORT_LOGO_URL_LIGHT
from SYS_SORT_PROMOTE s
left join (select SORT_ID from SYS_SORT_PROMOTE where SORT_ID=#{sortId}) b
on s.SORT_ID = b.SORT_ID
  WHERE
    b.SORT_ID IS NULL
    AND s.SORT_NAME = '必听经典'
  limit 1;
上述SORT_ID=#{sortId}中的sortId传入SORT_ID这个字段需要排除的Id值,左外连接时以需要筛选的字段(SORT_ID)作为连接条件,最后在where条件中加上b.SORT_ID IS NULL来将表中的相关数据筛选掉就可以了。
相关文章
- 逃离鸭科夫农场镇晋升专家快递员怎么做 晋升专家快递员任务流程 11-04
 - 逃离鸭科夫农场镇进阶实力证明2怎么做 实力证明2任务流程 11-04
 - 逃离鸭科夫农场镇清理校园任务怎么完成 清理校园任务流程 11-04
 - 逃离鸭科夫四骑士打法攻略 四骑士打法攻略(一) 11-04
 - 燕云十六声墨山道论文怎么得满分-墨山道论文满分达成方法 11-04
 - 逃离鸭科夫锅在哪 逃离鸭科夫锅获取方法 11-04