sql當中NOT IN和IN,exists與not exists的區別


1、EXISTS=IN,意思差不多相同,但是語法上有一點不同,好像使用IN效率要差點,應該是不會執行索引的原因

1 SELECT ID,NAME FROM A WHERE ID IN (SELECT AID FROM B WHERE A.ID=B.AID)

2 SELECT ID,NAME FROM A where exists (SELECT*FROM B WHERE A.ID=B.AID)

2、NOTEXISTS=NOTIN ,意思相同不過語法上有點點區別

1 SELECT ID,NAME FROM A WHERE ID NOT IN (SELECT AID FROM B WHERE A.ID=B.AID)

2 SELECT ID,NAME FROM A WHERE NOT exists (SELECT * FROM B WHERE A.ID=B.AID)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM