mysql - 尝试进行 LEFT JOIN,但最终得到空结果

标签 mysql sql

我尝试进行 LEFT JOIN(图像左侧第二个)。所以基本上我想要表 A 中的所有记录而不需要表 B 中的记录,所以我只想从表 B 中获取与表 A 交叉的信息。表 B 中有更多信息,如书籍详细信息,我希望能够提取,但我不需要表 B 中的行,只需要额外的信息。我认为最好的方法是使用 LEFT JOIN,这是我尝试过的代码,但它会导致空字符串/结果:

SELECT WF.*, W.* FROM WalletFrom AS WF LEFT JOIN Wallet AS W ON W.BookID = WF.BookID WHERE WF.BookID = 1360 AND W.BookID IS NULL

我做错了什么?

钱包中的列: 钱包ID 用户身份 书号 订单编号 钱包状态ID 赢 钱包产品ID

来自 WalletFrom 的列: 订单编号 书号 数数 赢 总赢 税 结束语 约会时间 钱包产品ID enter image description here

最佳答案

你得到空结果,因为 W.BookID IS NULL 子句,left join 保证它不是null 及其条件。

如果您只想要来自 WalletFromWallet 中存在 BookId 的记录,您可以使用以下查询:

SELECT * FROM WalletFrom wf
WHERE EXISTS(SELECT 1 FROM Wallet
             WHERE BookId = wf.BookId)

关于mysql - 尝试进行 LEFT JOIN,但最终得到空结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59590346/

相关文章:

c# - MySqlDataReader 没有读取我的查询,就好像没有返回行一样,但 PHPMyAdmin 返回具有相同查询的行

mysql - 监控服务名称错误

MySQL Workbench 查询首选项

c++ - 将 Informix Object Interface for C++ 用于不带参数的存储过程/函数

sql - 返回统计信息而不是点击的关键字搜索引擎

sql - SQL Server Management Studio 中的存储过程依赖项

php - 如何创建原始帖子的链接,PHP

mysql - 连接三个 WordPress 表

sql - 选择带时区的时间戳,但忽略秒

php - 在 PHP MySQL 查询中获取外键对象的简洁方法