gpt4 book ai didi

DB2 查询组按 id 但具有最大日期和最大序列

转载 作者:行者123 更新时间:2023-12-04 02:02:21 26 4
gpt4 key购买 nike

我的 table 是这样的

ID    FName LName Date(mm/dd/yy) Sequence Value
101 A B 1/10/2010 1 10
101 A B 1/10/2010 2 20
101 X Y 1/2/2010 1 15
101 Z X 1/3/2010 5 10
102 A B 1/10/2010 2 10
102 X Y 1/2/2010 1 15
102 Z X 1/3/2010 5 10

我需要一个应该返回 2 条记录的查询

101   A      B    1/10/2010      2       20
102 A B 1/10/2010 2 10

这是日期的最大值和序列组的最大值。

任何人都可以提供帮助。

最佳答案

-----------------------
-- get me my rows...
-----------------------
select * from myTable t
-----------------------
-- limiting them...
-----------------------
inner join
----------------------------------
-- ...by joining to a subselection
----------------------------------
(select m.id, m.date, max(m.sequence) as max_seq from myTable m inner join
----------------------------------------------------
-- first group on id and date to get max-date-per-id
----------------------------------------------------
(select id, max(date) as date from myTable group by id) y
on m.id = y.id and m.date = y.date
group by id) x

on t.id = x.id
and t.sequence = x.max_seq

这将是一个简单的解决方案,它不考虑关系,也不考虑序列为 NULL 的行。

编辑: 我添加了一个额外的组来首先选择 max-date-per-id,然后加入这个以获得 max-sequence-per-max-date-per-id在加入主表以获取所有列之前。

关于DB2 查询组按 id 但具有最大日期和最大序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3931127/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com