舉例說明使用SQL中EXISTS和IN查詢的區(qū)別
作者:佚名
SQL中EXISTS查詢和IN查詢不盡相同,下面就以例子為您詳細(xì)介紹二者的區(qū)別,希望對您學(xué)習(xí)SQL中EXISTS查詢有所幫助。
SQL中EXISTS查詢和IN查詢究竟有何區(qū)別呢?下面將為您詳細(xì)介紹SQL中EXISTS和IN在查詢上的區(qū)別,供您參考。
- 這個例子比較了兩個語義類似的查詢。第一個查詢使用 EXISTS 而第二個查詢使用 IN。注意兩個查詢返回相同的信息。
- USE pubs
- GO
- SELECT DISTINCT pub_nameFROM publishers
- WHERE EXISTS
- (SELECT *
- FROM titles
- WHERE pub_id = publishers.pub_id
- AND type = \'business\')
- GO
- -- Or, using the IN clause:
- USE pubs
- GO
- SELECT distinct pub_name
- FROM publishers
- WHERE pub_id IN
- (SELECT pub_id
- FROM titles
- WHERE type = \'business\')
- GO
- 下面是任一查詢的結(jié)果集:
- pub_name
- ----------------------------------------
- Algodata Infosystems
- New Moon Books
- (2 row(s) affected)
【編輯推薦】
責(zé)任編輯:段燃
來源:
互聯(lián)網(wǎng)