用于添加新列的spark中的withcolumn()未显示结果

时间:2018-11-04 09:07:51

标签: apache-spark apache-spark-sql apache-spark-dataset

我正在尝试使用withcolumn添加一个新列,其值应为NULL,但不起作用。

 val schema = StructType(
                    StructField("uid",StringType,true)::
                    StructField("sid",StringType,true)::
                    StructField("astid",StringType,true)::
                    StructField("timestamp",StringType,true)::
                    StructField("start",StringType,true)::
                    StructField("end",StringType,true)::
                    StructField("geo",StringType,true)::
                    StructField("stnid",StringType,true)::
                    StructField("end_type",LongType,true)::
                    StructField("like",LongType,true)::
                    StructField("dislike",LongType,true)::Nil
                      ) 

val Mobpath = spark.read.schema(schema).csv("/data/mob.txt")  
Mobpath.printSchema()

Mobpath.createOrReplaceTempView("Mobpathsql")

val showall =  spark.sql("select * from Mobpathsql")
showall.show()

val newcol = Mobpath.withColumn("new1",functions.lit("null"))
newcol.show()       

使用withcolumn不会显示任何错误,也不会显示任何输出。

1 个答案:

答案 0 :(得分:-1)

这是什么:

val newcol = showall.withColumn("new1",functions.lit("null"))
newcol.show()  

我只是测试了上面的代码并且它起作用了,我不知道为什么它不适用于Mobpath