spark中case when出错

sisteryaya 2017-04-24 10:38:53


显示错误:
pyspark.sql.utils.AnalysisException: 'org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: MetaException(message:org.apache.hadoop.hive.serde2.SerDeException org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe: columns has 13 elements while columns.types has 7 elements!);'

图一为我的程序,图二为table:train16_19
我想修改 time 那一列,用日代替年月日时,如:2014-12-16 18 改为16

请各位指点一下,感谢!
...全文
500 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
sisteryaya 2017-04-25
  • 打赏
  • 举报
回复
已解决。 spark.sql("CREATE TABLE day16_19 AS \ SELECT user_id,item_id,behavior_type,case when substr(time,1,10)='2014-12-16' then 16 \ when substr(time,1,10)='2014-12-17' then 17 \ when substr(time,1,10)='2014-12-18' then 18 else 0 end as day from user_test")

1,258

社区成员

发帖
与我相关
我的任务
社区描述
Spark由Scala写成,是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于MapReduce算法实现的分布式计算。
社区管理员
  • Spark
  • shiter
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧