假如两张表: createtablea{ idbigserialprimarykey, namevarcharnull } createtableb{ idbigserialprimarykey, namevarcharnull } 然后插入数据 insertintoa(name)values(null); insertintob(name)values(null); 两张表联合查询: selecta。name,b。namefromajoinbona。idb。 我们会发现一行数据,两个字段的值都是空的。 但是如果下面这样写,将会没有数据: selecta。name,b。namefromajoinbona。idandb。idanda。nameb。 NULL值无从比较,所有在写SQL的时候要特别注意。 以上场景是在Postgresql下的问题,其他数据库没有验证过,有兴趣,大家可以尝试下。