如果存在可选字段,是否可以将Dataframe列强制转换为StructType?

时间:2019-04-01 23:52:57

标签: scala apache-spark

我有一个StructType:val st = StructType(Seq(StructField("idType", StringType, false), StructField("idString", StringType, true))),它为以下案例类建模:

case class ID(idType: String, idString: Option[String] = None)

我想使用以下数据框选择语句: df.select(Seq(col("ID").cast(st): _*)

如果idTypeidString同时存在,则有效,但如果idType存在而idString不存在,则无效。如果idString不存在,但idType存在,我希望idString设置为null。如何实现?

0 个答案:

没有答案