gpt4 book ai didi

mysql - 如何使用可为空的列连接 MySQL 表?

转载 作者:IT老高 更新时间:2023-10-28 23:49:17 24 4
gpt4 key购买 nike

我对 MySQL 有点不熟悉,所以我希望我能在这里找到一些针对我的问题的建议。

基本上我有两张 table ,为了方便起见,称它们为 A 和 B。两个表都有一个类型为 varchar 的可空列 C。当我使用 C 连接 A 和 B 时,我丢失了任一表中 C 为 NULL 的所有行。我知道这在 MySQL 中是正常的,但我想得到的是一个包含两个表中 C 为 NULL 的行组合的连接。我发现下面的查询似乎运行良好。

SELECT *
FROM A JOIN B
ON (A.C IS NULL AND B.C IS NULL) OR (A.C IS NOT NULL AND B.C IS NOT NULL AND A.C = B.C)

所以我的问题是,这个查询是我能得到的最好的,还是有办法让这个连接更好?谢谢!

最佳答案

使用 NULL-safe equal operator :

SELECT * FROM A JOIN B ON A.C <=> B.C

关于mysql - 如何使用可为空的列连接 MySQL 表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18090120/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com