Sql s在左表中,仍然不会将左表中不满足条件的行包括在结果集中

Sql s在左表中,仍然不会将左表中不满足条件的行包括在结果集中,sql,oracle,left-join,self-join,right-join,Sql,Oracle,Left Join,Self Join,Right Join,我花了很长时间才弄明白,我希望它能解释得很好,并且能有所帮助。(因为我以前也很难理解它)。这是在oracleThis中完成的,它在SQL Fiddle()中生成正确的结果。运行示例时出现问题。这是在oracleThis中完成的。这将在SQL FIDLE()中生成正确的结果。运行示例时出现问题。这只会产生与原始左连接相同的结果;所有的数据。老实说,您对空值的观察让我更加困惑。@user3297834。在这个查询中,左连接和右连接应该产生相同的结果。在查看结果时,我怀疑有什么东西正在过滤掉只有NUL

我花了很长时间才弄明白,我希望它能解释得很好,并且能有所帮助。(因为我以前也很难理解它)。

这是在oracleThis中完成的,它在SQL Fiddle()中生成正确的结果。运行示例时出现问题。这是在oracleThis中完成的。这将在SQL FIDLE()中生成正确的结果。运行示例时出现问题。这只会产生与原始左连接相同的结果;所有的数据。老实说,您对空值的观察让我更加困惑。@user3297834。在这个查询中,左连接和右连接应该产生相同的结果。在查看结果时,我怀疑有什么东西正在过滤掉只有
NULL
值的行;所有的数据。老实说,您对空值的观察让我更加困惑。@user3297834。在这个查询中,左连接和右连接应该产生相同的结果。当您查看结果时,我怀疑有什么东西正在过滤掉只有
NULL
值的行。谢谢您的解释。我想这是因为我使用了相同的列名;因为是同一张桌子,这让我很困惑。谢谢你澄清这一点!谢谢你的解释。我想这是因为我使用了相同的列名;因为是同一张桌子,这让我很困惑。谢谢你澄清这一点!
   ID NAME            DEPARTMENT   
    1 stelios          sa 
    2 andros           sa 
    3 stav             ba  
    4 mary             ba  
    5 antonia          la  
    6 lambros          ka  
   NAME         DEPARTMENT
   andros          sa
   steliso         sa
   mary            ba
   stav            ba
   NAME       DEPARTMENT
   andros     sa
   steliso    sa
   mary       ba
   stav       ba
   antonia    la
   lambros    ka
   NAME       DEPARTMENT
   steliso    sa
   andros     sa
   stav       ba
   mary       ba
 NAME       DEPARTMENT
 andros     sa
 steliso    sa
 mary       ba
 stav       ba
 antonia    la
 lambros    ka
NAME    DEPARTMENT
stelios sa
andros  sa
stav    ba
mary    ba
(null)  (null)
(null)  (null)
select j2.name,j2.department
from join_test j1 left join join_test j2
on(j1.department=j2.department and j1.name<>j2.name)
select j1.name,j1.department
from join_test j1 right join join_test j2
on(j1.department=j2.department and j1.name<>j2.name)
NAME    DEPARTMENT
stelios sa
andros  sa
stav    ba
mary    ba
(null)  (null)
(null)  (null)
NAME        DEPARTMENT   NAME       DEPT
stelios     sa           andros     sa
andros      sa           stelios    sa
stav        ba           mary       ba
mary        ba           stav       ba
(null)      (null)       antonia    la
(null)      (null)       lambros    ka