MySQL中一个sql语句包含in优化问题

Posted 微醺

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL中一个sql语句包含in优化问题相关的知识,希望对你有一定的参考价值。

第一版sql:

SELECT module.id, module.module_name, module.module_code
 `module` where 
92 IN (module.did_access)
WHERE module.type =2
AND module.status =0
ORDER BY module.create_time ASC
LIMIT 0 , 30 

    这样的sql语句会有缺陷,in的用法虽然看上去没问题,但是是不对的,这样查出的数据不全,所以优化了一下:

第二版sql:

select module.id, module.module_name, module.module_code
 from `budget_project_module` as module 
where module.type=1 
and module.status=0 
and FIND_IN_SET(92, module.did_access) order by module.create_time asc

 

以上是关于MySQL中一个sql语句包含in优化问题的主要内容,如果未能解决你的问题,请参考以下文章

Mysql优化

mysql优化

MYSQL 查询语句中in的用法

sql语句中嵌套时候用in 和=有啥区别

SQL优化

项目中优化sql语句执行效率的方法是啥?