明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

MySQL中對于exists與not exists的示例分享

[摘要]這篇文章主要介紹了mysql exists與not exists實例詳解的相關(guān)資料,鑒于 not exists 的效率往往要高于 not in , 所以一般情況下會使用前者替代后者,需要的朋友可以參...
這篇文章主要介紹了mysql exists與not exists實例詳解的相關(guān)資料,鑒于 not exists 的效率往往要高于 not in , 所以一般情況下會使用前者替代后者,需要的朋友可以參考下

mysql exists與not exists實例詳解

tableA

column1 column1 column3

tableb

column1 column1 column3

要查詢 tableA 的數(shù)據(jù),條件是是 tableA.column1 不在 tableB 的 tableB.column2 中

也就是要得到類似以下語句的效果(not in 效果不完全等同于 not exists , 如果子查詢中出現(xiàn)空記錄, 則整個查詢語句不會返回數(shù)據(jù))


SELECT 
  a.*
FROM
  tableA a
WHERE 
  a.column1 not in (
    SELECT column2 FROM tableB
  )

可以使用如下語句來實現(xiàn)


SELECT
  a.*
FROM
  tableA a
WHERE
  NOT EXISTS(
    SELECT b.column2 FROM tableB b WHERE a.colunm1=b.column2
  )

以上只是兩張表的情況, 其實在多張表的連接查詢中也是比較好用的. 以上寫法同樣適用于exists

以上就是MySQL中關(guān)于exists和not exists的示例分享的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!


學(xué)習(xí)教程快速掌握從入門到精通的SQL知識。