久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

mysql中in和or的區別有哪些

174次閱讀
沒有評論

共計 909 個字符,預計需要花費 3 分鐘才能閱讀完成。

這篇文章主要講解了“mysql 中 in 和 or 的區別有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著丸趣 TV 小編的思路慢慢深入,一起來研究和學習“mysql 中 in 和 or 的區別有哪些”吧!

區別:1、in 通過父查詢表和子自查詢表作 hash 連接操作查詢,or 是對父查詢表作 loop 循環后再對子查詢表進行查詢;2、在沒有索引或者主鍵的情況下,隨著 in 或 or 后面的數據量增多,or 的執行效率會有明顯下降,in 的執行效率不會明顯下降。

本教程操作環境:windows10 系統、mysql8.0.22 版本、Dell G3 電腦。

mysql 中 in 和 or 的區別是什么

做數據對比,千萬級別數據

sql 語句中 in 和 or 的區別為:來操作不同、適合不同、執行效率不同。

一、操作不同

1、in:in 是把父查詢表和子自查詢表作 hash 連接。

2、or:or 是對父查詢表作 loop 循環,每次 loop 循環再對子查詢表進行查詢。

二、適合不同 5261

1、in:in 適合用于子查詢表數據比父查詢表數據多的情 4102 況。

2、or:or 適合用于子查詢表數據比父查詢表數據少的情況。

三、執行效率不同

1、in:在沒有索引的情況下,隨著 in 后面的數據量越多,in 的執行效率不會有太大的下降。

2、or:在沒有索引的情況下,隨著 or 后面的數據量越多,or 的執行效率會有明顯的下降。

如果 in 和 or 所在列有索引或者主鍵的話,or 和 in 沒啥差別,執行計劃和執行時間都幾乎一樣。

如果 in 和 or 所在列沒有 索引的話,性能差別就很大了。在沒有索引的情況下,隨著 in 或者 or 后面的數據量越多,in 的效率不會有太大的下降,但是 or 會隨著記錄越多的話性能下降 非常厲害

因此在給 in 和 or 的效率下定義的時候,應該再加上一個條件,就是所在的列是否有索引或者是否是主鍵。如果有索引或者主鍵性能沒啥差別,如果沒有索引,性能差別不是一點點!

感謝各位的閱讀,以上就是“mysql 中 in 和 or 的區別有哪些”的內容了,經過本文的學習后,相信大家對 mysql 中 in 和 or 的區別有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是丸趣 TV,丸趣 TV 小編將為大家推送更多相關知識點的文章,歡迎關注!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-15發表,共計909字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 临高县| 凯里市| 白玉县| 醴陵市| 镇江市| 将乐县| 阿鲁科尔沁旗| 茶陵县| 安丘市| 宝坻区| 邛崃市| 长葛市| 通州市| 庆城县| 汉川市| 昌江| 兖州市| 太仆寺旗| 吴忠市| 松原市| 册亨县| 方山县| 乐平市| 古浪县| 芷江| 安仁县| 桃源县| 清远市| 甘孜| 太仆寺旗| 长岭县| 奎屯市| 城固县| 乌鲁木齐市| 西吉县| 霞浦县| 广平县| 县级市| 南汇区| 襄垣县| 博客|