課程
/數據庫
/MySQL
/性能優化之MySQL優化
用in查詢效率高嗎
2017-03-10
源自:性能優化之MySQL優化 4-1
正在回答
不高,用EXISTS替代IN、用NOT EXISTS替代NOT IN:
(高效)SELECT * FROM ?EMP (基礎表) ?WHERE ?EMPNO > 0 ?AND ?EXISTS (SELECT ‘X' ?FROM DEPT ?WHERE ?DEPT.DEPTNO = EMP.DEPTNO ?AND ?LOC = ‘MELB') (低效)SELECT ?* FROM ?EMP (基礎表) ?WHERE ?EMPNO > 0 ?AND ?DEPTNO IN(SELECT DEPTNO ?FROM ?DEPT ?WHERE ?LOC = ‘MELB')
煩_
舉報
了解MySQL數據庫優化的方法和技巧,在課程中共同探討一起學習吧
1 回答為啥子查詢的效率沒有鏈接查詢的效率高?
5 回答子查詢和連接查詢到底哪個效率高
1 回答怎樣提高優化效率
1 回答用函數對類型進行轉換,會影響查詢效率吧?
1 回答是不是所有的 in 語句都轉化為 left join 效率會提高?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-03-10
不高,用EXISTS替代IN、用NOT EXISTS替代NOT IN:
(高效)SELECT * FROM ?EMP (基礎表) ?WHERE ?EMPNO > 0 ?AND ?EXISTS (SELECT ‘X' ?FROM DEPT ?WHERE ?DEPT.DEPTNO = EMP.DEPTNO ?AND ?LOC = ‘MELB')
(低效)SELECT ?* FROM ?EMP (基礎表) ?WHERE ?EMPNO > 0 ?AND ?DEPTNO IN(SELECT DEPTNO ?FROM ?DEPT ?WHERE ?LOC = ‘MELB')