1. 程式人生 > >sql當中NOT IN和IN,exists與not exists的區別

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

相同 eno select 意思 note pre 區別 有一點 不同

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

1 SELECT ID,NAME FROM A WHERE ID IN (SELECT AID FROM B)2 SELECT ID,NAME FROM A WHERENOT EXIST (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)

2 SELECT ID,NAME FROM A WHERE NOT EXIST

(SELECT * FROM B WHERE A.ID=B.AID)

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