mysql existsとnot existsインスタンスの詳細

843 ワード

mysql existsとnot existsインスタンスの詳細
tableA
|column1 | column1 |column3 |
tableb
|column1 | column1 |column3 |
tableaのデータを照会するには、tableaが条件です.column 1はtableBのtableBにない.column 2で
つまり、次の文のような効果を得る(not in効果はnot existsと完全に等しくなく、サブクエリに空のレコードが表示された場合、クエリ文全体がデータを返さない)

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

次の文を使用して実装できます.

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

以上が2枚のテーブルの場合、複数のテーブルの接続クエリーでも使いやすい.以上の書き方はexistsにも適用されます
以上はmysql existsとnot existsの実例の详しい解で、もし疑问があれば伝言あるいは当駅のコミュニティに行って交流して讨论して、読むことに感谢して、みんなを助けることができることを望んで、みんなの当駅に対する支持に感谢します!