Sql 每人每月最新一行
我需要得到每个人每月一行,该行应该是该月的最长日期 现有数据:Sql 每人每月最新一行,sql,apache-spark-sql,pyspark-sql,Sql,Apache Spark Sql,Pyspark Sql,我需要得到每个人每月一行,该行应该是该月的最长日期 现有数据: person date value a jan/1/2019 10 a jan/2/2019 20 a feb/3/2019 30 b jan/10/2019 20 b jan/20/2019 30 b feb/1/2019 40 b feb/12/2019 30 期望输出: a
person date value
a jan/1/2019 10
a jan/2/2019 20
a feb/3/2019 30
b jan/10/2019 20
b jan/20/2019 30
b feb/1/2019 40
b feb/12/2019 30
期望输出:
a jan/2/2019 20
a feb/3/2019 30
b jan/20/2019 30
b feb/12/2019 30
我不知道怎样才能做到这一点。非常感谢您的帮助。您可以在子查询中使用聚合,并通过
中的操作符将它们连接起来:
select *
from tab
where (person,date) in
(
select person,max(date)
from tab
group by person,month(date),year(date)
)
提示:MAX()
和分组依据
提示:自左加入?使用NOW()。返回,但您的答案显示为已删除
。这就是为什么要把它挂起来。好吧,意识到我现在忘了()然后:)@RatulSharker