首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >检索每个组中的最后一条记录?

检索每个组中的最后一条记录?

提问于 2017-12-11 11:30:36
回答 2关注 0查看 263

"有一个表格messages包含如下所示的数据:

代码语言:txt
复制
Id   Name   Other_Columns
代码语言:txt
复制
-------------------------
代码语言:txt
复制
1    A       A_data_1
代码语言:txt
复制
2    A       A_data_2
代码语言:txt
复制
3    A       A_data_3
代码语言:txt
复制
4    B       B_data_1
代码语言:txt
复制
5    B       B_data_2
代码语言:txt
复制
6    C       C_data_1

如果我运行一个查询select * from messages group by name,我会得到的结果是:

代码语言:txt
复制
1    A       A_data_1
代码语言:txt
复制
4    B       B_data_1
代码语言:txt
复制
6    C       C_data_1

什么查询将返回以下结果?

代码语言:txt
复制
3    A       A_data_3
代码语言:txt
复制
5    B       B_data_2
代码语言:txt
复制
6    C       C_data_1

也就是说,每个组中的最后一个记录应该被返回。

目前,这是我使用的查询:

代码语言:txt
复制
select * from (select * from messages ORDER BY id DESC) AS x GROUP BY name

但是这看起来非常低效。任何其他方式来达到相同的结果?"

回答

和开发者交流更多问题细节吧,去 写回答
相关文章

相似问题

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