sql - SQL Spark - 按日期、月份和年份对时间戳记录进行分组
问题描述
我有一个看起来像这样的数据框:
2019-04-17T17:21:00.963+0000 300
2019-04-17T17:21:21.000+0000 194
2019-04-17T17:21:30.096+0000 104
2019-04-17T17:22:00.243+0000 299
2019-04-17T17:22:20.290+0000 222
2019-04-17T17:22:30.376+0000 76
2019-04-17T17:22:50.570+0000 298
2019-04-17T17:23:20.760+0000 298
我想按日、月和年对这些时间戳进行分组,并为小时/分钟创建一个抽象。
query="""
SELECT day(InsertDate) as day,
month(InsertDate) as month,
year(InsertDate) as year,
count(ItemLogID) as value
FROM db_ods_aesbhist.ItemLogMessageInbox
group by day, month, year
ORDER BY value DESC
"""
df_input=spark.sql(query).toPandas().set_index()
display(df_input)
我想出了这个,但它会生成三列,我想继续使用日期作为键。
知道怎么做吗?
解决方案
刚刚发现可以解决to_date()
问题。
标记为已解决!
推荐阅读
- excel - VBA Excel - 根据复杂的规则将每日交货清单分类
- java - 如何在 Hibernate 中处理在数据库中共享相同复合 id 的多个表实体?
- spring - 创建名称为“clienteRestController”的 bean 时出错:通过字段“clientService”表示的依赖关系不满足;
- c# - 获取存储过程的定义
- java - SpringBoot 安全配置未按预期工作
- entity-framework - 使用 .NET Core 处理和注入 DbContexts
- java - 向android中的URL列表发出多个get请求
- javascript - 无法让 RegEx 模式在使用 Javascript 的 MVC 5 View 中正常工作
- visual-studio-code - VSCode 中的 PlatformIO
- javascript - Canvas HTML - lineTo 和 Bezier 曲线之间的平滑度