Apache Spark 查询仅在 YEAR 上来自“dd/mm/yyyy”格式
Posted
技术标签:
【中文标题】Apache Spark 查询仅在 YEAR 上来自“dd/mm/yyyy”格式【英文标题】:Apache Spark Query only on YEAR from "dd/mm/yyyy" format 【发布时间】:2017-02-12 02:50:52 【问题描述】:我在 excel 文件中有超过 100 万条记录。我想使用python查询表格,但日期格式是dd/mm/yyyy
。我知道在 mysql 中支持的格式是yyyy-mm-dd
。我仅限于更改日期格式。有没有可能我可以在运行时做到这一点。只需从dd/mm/yyyy
查询yyyy
并获取记录。
我如何只在Year
而不是月份或日期上查询这种格式来获取数据?
【问题讨论】:
我不太确定你在问什么,但我想你正在寻找this'select * from TABLE where year(date) = 2016'
?我链接的页面为您提供了各种弄乱日期的方法
@Nullman 我已经尝试过了。它不适用于dd/mm/yyyy
格式。我认为它需要yyyy-mm-dd
格式。
哦,我明白了。您是否尝试使用 substring() 和 concat() 更改格式?
【参考方案1】:
假设“日期”是作为字符串接收的,那么RIGHT(date, 4)
将只给出年份。
(如果您只需要数据,我认为不需要重新格式化字符串。否则请参阅STR_TO_DATE()
【讨论】:
以上是关于Apache Spark 查询仅在 YEAR 上来自“dd/mm/yyyy”格式的主要内容,如果未能解决你的问题,请参考以下文章
Spark SQL 查询:org.apache.spark.sql.AnalysisException
将 RDD 中的 JSON 行转换为 Apache Spark 中的数据帧
加入期间的意外行为(仅在将列 'year' 重命名为 'year' 时才有效)否则将失败并显示“package.TreeNodeException:执行树”