天天看点

PostgreSQL 测试 left join 条件带有null值时的效果

tempa表

PostgreSQL 测试 left join 条件带有null值时的效果

tempb表

PostgreSQL 测试 left join 条件带有null值时的效果

1. tempa left join tempb 关联查询 需求新增工单流水号相同的记录

select * from tempa a left join tempb b on a."需求新增工单流水号"=b."需求新增工单流水号";      
PostgreSQL 测试 left join 条件带有null值时的效果

2. 加上 where a."需求新增工单流水号" is not null; 作为条件

select * from tempa a left join tempb b on a."需求新增工单流水号"=b."需求新增工单流水号" where a."需求新增工单流水号" is not null;      
PostgreSQL 测试 left join 条件带有null值时的效果

3. 加上 and a."需求新增工单流水号" is not null; 作为条件

select * from tempa a left join tempb b on a."需求新增工单流水号"=b."需求新增工单流水号" and a."需求新增工单流水号" is not null;      
PostgreSQL 测试 left join 条件带有null值时的效果

4. 加上 where b."需求新增工单流水号" is not null; 作为条件

select * from tempa a left join tempb b on a."需求新增工单流水号"=b."需求新增工单流水号" where b."需求新增工单流水号" is not null;      
PostgreSQL 测试 left join 条件带有null值时的效果

5. 加上 and b."需求新增工单流水号" is not null 作为条件

select * from tempa a left join tempb b on a."需求新增工单流水号"=b."需求新增工单流水号" and b."需求新增工单流水号" is not null;      
PostgreSQL 测试 left join 条件带有null值时的效果
select * from tempa a inner join tempb b on a."需求新增工单流水号"=b."需求新增工单流水号";