gpt4 book ai didi

mysql - 为什么在左连接中结果显示空列下有几行

转载 作者:行者123 更新时间:2023-11-29 18:46:40 26 4
gpt4 key购买 nike

我正在尝试练习左连接并面临空值问题。

这是两个表,其中很少有以红色突出显示的常见细节 第一次尝试 - 当我运行内部联接时,我得到与红色 4 行匹配的正确结果查询如下

select * from empl1 
inner join empl2 on empl1.empl_code=empl2.empl_code

第二次尝试 - 当我运行左连接时,我得到了所有常见的 4 行,但其余 6 行显示所有空值 - 请参阅下面的查询

select * from empl2 
left join empl1 on empl2.empl_code=empl1.empl_code

第三次尝试 - 当我运行提及列标题的左连接时,我在除指定列之外的所有列中获得完整值。在指定列中,除了匹配行之外,我得到空值。请参阅下面的查询

SELECT empl1.empl_code, empl1.fullname, empl2.designation, empl1.salary, empl1.department,  empl1.tablename 
FROM Empl1
left join empl2 on empl1.empl_code = empl2.empl_code

尝试 1 和尝试 2 的结果

为什么我在左连接中遇到空值问题?为什么我第二次在所有列中获取值并在指定中获取空值?

请帮我理解

最佳答案

左连接将为您提供表中的所有记录,并为不匹配的记录提供null

Try 3 中,您选择了 empl2.designation,因此对于不匹配的记录,您将获得 null

try 2中,如果您只是select empl2.* from empl2 left join....,您将不会得到null。我相信你没有给出准确的屏幕截图。

我鼓励您在rextester.com上创建演示如果您有任何其他疑问,请分享您的工作。

关于mysql - 为什么在左连接中结果显示空列下有几行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44579334/

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