【问题标题】:a NOT EXISTS query in SQLSQL 中的 NOT EXISTS 查询
【发布时间】:2016-07-22 13:39:43
【问题描述】:

大家,我在课堂上看到了这个“不存在”查询的例子。但我真的很困惑。 它用于查找所有参加过生物系提供的所有课程的学生,但我不明白为什么?有人可以帮助我吗?谢谢。 enter image description here

【问题讨论】:

  • 是的,该查询显示所有参加过生物系所有课程的学生。你的问题是,为什么要写这个查询?
  • 你明白了。是的,我的问题是为什么查询是这样写的?看起来真的很奇怪。
  • 嗯,任务是找到不存在缺少生物学课程的学生。所以查询作者使用了NOT EXISTS。通过以不同的方式制定任务,您可能会得到不同的查询。您将如何编写查询?

标签: sql database not-exists


【解决方案1】:

“NOT EXIST”表示子查询(选择 T_course_id ...)返回 0 条记录时将满足的子句。

【讨论】:

  • 所以第一个查询是用来反驳子查询“不存在”的,那为什么还要这样做呢?我们不能只说“存在”吗?
  • 这取决于,也许做一个排除某些结果的子查询比包含所有正确结果的子查询更容易。有时使用 EXIST 更容易,有时使用 NOT EXIST 更好。
猜你喜欢
  • 2010-10-07
  • 2021-03-02
  • 2013-02-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-01
  • 2013-08-14
  • 1970-01-01
相关资源
最近更新 更多