在pySpark中,我正在使用以下命令从metastore中检索表:
spark = SparkSession.builder(...)
df = spark.table("table_Name")
弹出以下错误消息:
无法将field
从十进制(21,13)强制转换为字段#538:十进制(14,6),因为它可能会被截断
实际表在元存储中的类型为decimal(14,6)
。
decimal(21,13)
的来源decimal(21,13)
和decimal(14,6)
的逗号前都有相同的位数,因此此转换应该可以。即使不是,Spark也会在无法应用强制转换的情况下放置null
。问题是:这是怎么回事?
最好的问候。