gpt4 book ai didi

sql - Spark 时间数据类型相当于 MYSQL TIME

转载 作者:行者123 更新时间:2023-12-04 21:50:15 25 4
gpt4 key购买 nike

我正在通过 JDBC 从 MYSQL 导入数据以产生 Spark ,其中一列的时间类型(SQL 类型 TIME 和 JDBC 类型 java.sql.Time)具有较大的小时值(例如:168:03:01)。 Spark将它们转换为时间戳格式并在读取三位数小时时导致错误。如何处理Spark中的时间类型

最佳答案

可能此时您最好的办法是在 Spark 实际读取数据之前转换数据并直接在您的应用程序中对其进行解析。 JDBC 数据源允许您将有效子查询作为 dbtable 传递。选项或 table争论。这意味着你可以做类似这样的事情:

sqlContext.read.format("jdbc").options(Map(
"url" -> "xxxx",
"dbtable" -> "(SELECT some_field, CAST(time_field AS TEXT) FROM table) tmp",
))

并使用一些内置函数的组合将它在 Spark 中转换为适用于您的应用程序的类型。

关于sql - Spark 时间数据类型相当于 MYSQL TIME,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38356978/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com