數(shù)據(jù)庫(kù)嵌套查詢和連接查詢 sql語(yǔ)句中嵌套時(shí)候用in和=有什么區(qū)別?
sql語(yǔ)句中嵌套時(shí)候用in和=有什么區(qū)別?如果子查詢中只有一條記錄,則in和=。如果子查詢中有多條記錄,則使用=將出錯(cuò)。因此,無(wú)論查詢中有多少條記錄,in都可以使用,=只能在子查詢中只有一條記錄時(shí)使用
sql語(yǔ)句中嵌套時(shí)候用in和=有什么區(qū)別?
如果子查詢中只有一條記錄,則in和=。如果子查詢中有多條記錄,則使用=將出錯(cuò)。因此,無(wú)論查詢中有多少條記錄,in都可以使用,=只能在子查詢中只有一條記錄時(shí)使用。In和exists在理解上是相似的,但對(duì)于數(shù)據(jù)庫(kù)來(lái)說(shuō),In的執(zhí)行順序是只執(zhí)行查詢條件,然后用外部查詢檢查記錄,找到符合條件的記錄;exists是先執(zhí)行外部查詢,然后執(zhí)行子查詢。找到外部查詢記錄后,將符合條件的查詢記錄與唯一的查詢記錄進(jìn)行比較。如果外部查詢和子查詢的條目數(shù)相差很大,效率差別就非常明顯