【发布时间】:2019-02-26 18:39:52
【问题描述】:
我有一个 db2 链接服务器,我正在通过 SQL Server 运行查询。
select *
from openquery (DO,'
select distinct HOUSE_NUM, NAME, DOB, AGE, row_number()
over(partition by DOB) rownum
from schema.INFO
where HOUSE_NUM = ''332''
group by HOUSE_NUM, NAME, DOB, AGE
order by NAME, rownum desc
limit 1
with ur');
该表有历史记录,因此个人的每个年龄都有一行。我想为每个分区选择编号最高的行,因为这会给我他们当前的年龄,但是当我设置限制 1 来选择最高结果时,我只得到 1 行忽略所有其他人。问题是有多个人住在一个房子里,我需要他们所有的年龄,而不仅仅是其中一个。如何在 db2 中选择每个分区的顶部结果?
【问题讨论】:
-
请提供一些表格
schema.INFO示例数据,而不是您查询的结果,以及预期的结果。您对查询的用途和原因还不够清楚...
标签: sql-server select db2 partition row-number