在hive开发过程中,我们经常会有这样的疑问,a表关联b表,我想找到a表中的键在b表中不存在的数据,这时候用a表左连b表,然后where条件中加入b.flied is null。 但是细心的人会有这样的疑问,两个表关联之后,如果关联不上,b表字段的返回值真的都是null吗???
下面我们来做个测试,测试表tmp.tmp_citys,表结构如下:
表中的数据:
sql:
select
t1.city_id,t1.city_name ,t2.city_id ,t2.city_name ,
t2.city_id is null city_id为null
,
t2.city_id is not null city_id不为null
,
t2.city_id = ‘’ city_id为‘’
,
t2.city_id <> ‘’ city_id不为‘’
,
t2.city_name is null city_name为null
,
t2.city_name is not null city_name不为null
,
t2.city_name = ‘’ city_name为‘’
,<