本以为spark dataframe中 null值也可以作为join条件,没想到是错的,记录一下啊😣;

    看下面的验证代码块可以看到结果。

    1. val df1 = spark.sparkContext.parallelize(Seq((1, "a"), (2, null))).toDF("id1", "v")
    2. val df2 = spark.sparkContext.parallelize(Seq((3, "a"), (4, null))).toDF("id2", "v")
    3. df1.join(df2,Seq("v"),"full").show(false)
    1. +----+----+----+
    2. |v |id1 |id2 |
    3. +----+----+----+
    4. |null|2 |null|
    5. |null|null|4 |
    6. |a |1 |3 |
    7. +----+----+----+