婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > mySQL中in查詢與exists查詢的區別小結

mySQL中in查詢與exists查詢的區別小結

熱門標簽:神行者百貨商場地圖標注 如何辦理400客服電話 外呼系統怎樣才能不封號 外呼系統線路經常出問題嗎 地圖標注專員入駐 地圖標注什么軟件好用 安陽手機自動外呼系統原理是什么 西藏地圖標注改進點 地圖標注百度競價

一、關于exists查詢

explain select * from vendor where EXISTS(select * from area where area_code = vendor_prov_code ) limit 10

以上是一個典型的exists查詢的sql語句。

它的作用方式是這樣的:每次從vendor表中查詢出一條數據,然后將這條數據中的vendor_prov_code值傳遞到exists查詢中進行執行,也就是進行子查詢的執行。

如果子查詢查到的數據就返回布爾值true,如果沒有就返回布爾值false。返回布爾值true則將該條數據保存下來,否則就舍棄掉。也就是說exists查詢,是查詢出一條數據就執行一次子查詢。

需要注意的是:exists …. 只能返回布爾值true或者false,其他的字段并不會進行返回的。

二、關于in查詢

explain select * from vendor where vendor_prov_code in (select area_code from area ) limit 10

上面就是一條關于in查詢的sql語句。

它的作用方式是這樣的:先執行子查詢,也就是in()所包含的語句。子查詢查詢出數據以后,將前面的查詢分為n次普通查詢(n表示在子查詢中返回的數據行數)。也就是例如以下的執行步驟:

select * from doub_vendor where vendor_prov_code = 子查詢結果1
.......
.......
select * from doub_vendor where vendor_prov_code = 子查詢結果n

網上有人在爭exists查詢與in查詢的效率問題,這里得說以下,不同的mysql版本,不同的業務,不同的數據,執行效率是不一定的,這里涉及到了mysql優化器對sql語句的優化,子查詢的數據量問題等等。

網上還有人說mysql5.6版本對in查詢做了很好的優化,所以效率問題要看具體的場景,要看真實測試的數據來進行優化!

總結

以上就是Mysql中in查詢與exists查詢區別的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。

您可能感興趣的文章:
  • mysql中EXISTS和IN的使用方法比較
  • MySQL中exists、in及any的基本用法
  • MySQL中in與exists的使用及區別介紹
  • 對比分析MySQL語句中的IN 和Exists
  • MySQL exists 和in 詳解及區別
  • MYSQL IN 與 EXISTS 的優化示例介紹
  • mysql not in、left join、IS NULL、NOT EXISTS 效率問題記錄
  • MySQL中in和exists區別詳解

標簽:萍鄉 貴港 雞西 張掖 AXB 酒泉 衡水 阜陽

巨人網絡通訊聲明:本文標題《mySQL中in查詢與exists查詢的區別小結》,本文關鍵詞  mySQL,中,查詢,與,exists,的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《mySQL中in查詢與exists查詢的區別小結》相關的同類信息!
  • 本頁收集關于mySQL中in查詢與exists查詢的區別小結的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 涟源市| 黄龙县| 安庆市| 科技| 鹿泉市| 邹城市| 临沂市| 昌都县| 芦山县| 宝应县| 绥滨县| 二手房| 宜州市| 莱西市| 南通市| 忻城县| 石嘴山市| 鲁山县| 岗巴县| 抚远县| 吉林省| 邵武市| 仙游县| 阿城市| 镇宁| 武强县| 和政县| 左贡县| 岳普湖县| 安岳县| 揭阳市| 临猗县| 正安县| 左云县| 庐江县| 兰州市| 隆德县| 饶阳县| 竹山县| 长沙县| 连平县|