相关疑难解决方法(0)

Spark:在不更改列的可为空属性的情况下转换小数

将列强制转换为 aDecimalType中的 aDataFrame似乎会更改可为 null 的属性。具体来说,我有一个不可为空的类型列DecimalType(12, 4),我将其转换为DecimalType(38, 9)using df.withColumn(columnName, df.col(columnName).cast(dataType))。这会产生一个具有预期数据类型的字段,但该字段现在可为空。有没有一种方法可以在不更改列的可空属性的情况下进行转换?

我在 Spark 2.2.1 和 Spark 2.3.0 中都观察到了这种行为。

apache-spark apache-spark-sql

6
推荐指数
1
解决办法
2837
查看次数

标签 统计

apache-spark ×1

apache-spark-sql ×1