这篇文章将为大家详细讲解有关mysql中in和or的区别是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
mysql in or的区别:
1、操作不同,一个是连接,一个是循环查询
in:in是把父查询表和子自查询表作hash连接。
or:or是对父查询表作loop循环,每次loop循环再对子查询表进行查询。
2、使用范围不同,一个适合子表数据比父表数据多的情况,一个适合子表数据比父表数据少的情况
in:in适合用于子查询表数据比父查询表数据多的情况。
or:or适合用于子查询表数据比父查询表数据少的情况。
3、执行效率不同,数据量增情况下,一个执行效率不会有太大下降,一个有明显下降
in:在没有索引的情况下,随着in后面的数据量越多,in的执行效率不会有太大的下降。
or:在没有索引的情况下,随着or后面的数据量越多,or的执行效率会有明显的下降。
关于mysql中in和or的区别是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。