首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >基于日期的火花数据过滤

基于日期的火花数据过滤
EN

Stack Overflow用户
提问于 2015-08-13 17:39:57
回答 7查看 184.7K关注 0票数 54

我有一份数据

代码语言:javascript
运行
复制
date, string, string

我想在某个时间段之前选择日期。我在没有运气的情况下尝试了下面的方法

代码语言:javascript
运行
复制
 data.filter(data("date") < new java.sql.Date(format.parse("2015-03-14").getTime))

我收到一个错误,说明了以下内容

代码语言:javascript
运行
复制
org.apache.spark.sql.AnalysisException: resolved attribute(s) date#75 missing from date#72,uid#73,iid#74 in operator !Filter (date#75 < 16508);

据我所知,查询是不正确的。有人能告诉我应该以什么方式格式化查询吗?

我检查过数据仓库中的所有企业都有价值--它们有价值。

EN

Stack Overflow用户

发布于 2018-06-12 17:14:30

在PySpark(python)中,其中一个选项是让列在unix_timestamp中,format.We可以将字符串转换为unix_timestamp并指定格式,如下所示。注意,我们需要导入unix_timestamp和lit功能。

代码语言:javascript
运行
复制
from pyspark.sql.functions import unix_timestamp, lit

df.withColumn("tx_date", to_date(unix_timestamp(df_cast["date"], "MM/dd/yyyy").cast("timestamp")))

现在我们可以应用过滤器了

代码语言:javascript
运行
复制
df_cast.filter(df_cast["tx_date"] >= lit('2017-01-01')) \
       .filter(df_cast["tx_date"] <= lit('2017-01-31')).show()
票数 9
EN
查看全部 7 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31994997

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档