MySQL - 使用不存在的地方返回 null

标签 mysql

我试图找出为什么一个简单的查询返回 null:

SELECT CardNo FROM BOOK_LOANS WHERE DueDate=DateReturned AND
NOT EXISTS
(SELECT CardNo FROM BOOK_LOANS WHERE DueDate<>DateReturned)

我一直在学习 WHERE NOT EXISTS 但似乎找不到任何同时使用 WHERENOT EXISTS 的示例。有更好的方法吗?

当我使用 NOT IN 但我必须在此查询中使用 NOT EXISTS 时,我的查询有效

最佳答案

尝试以下查询:

SELECT CardNo FROM BOOK_LOANS A WHERE A.DueDate=A.DateReturned AND
NOT EXISTS
(SELECT CardNo FROM BOOK_LOANS B WHERE B.CardNo = A.CardNo B.DueDate<>B.DateReturned)

基本上,您需要将外部查询与内部查询结合到 CardNo 上,否则 NOT EXISTS 将返回日期不匹配的任何记录。

关于MySQL - 使用不存在的地方返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40753181/

相关文章:

mysql - Rails/MySQL 查询连接多个表时获取计数

c# - 如何查询当前MySQL .Net connector连接池的大小?

mysql - 在将数据库从一个数据库迁移到另一个数据库时保持数据库一致性的最佳方法是什么

mysql - 使用Go-Gorp创建表无法设置列详细信息

mysql - 在后端阻止连续的 SQL 请求

mysql - 查询获取上个月数据(从现在开始计算)并解析Json以获取Json中的项目

mysql - 无法添加或更新子行: a foreign key constraint fails in magetno

C# lambda 与 max 的内连接

javascript - 在 Nodewebkit 中使用 MySQL(嵌入式)

mysql - 使用 MYSQL QUERY 和 GROUP BY 获取总计和小计