sql数据库怎么实现分组并取每组的前1条语句,按日期排序?

 我来答
果树上的小黑猫
2013-05-03 · 超过27用户采纳过TA的回答
知道答主
回答量:79
采纳率:0%
帮助的人:60.9万
展开全部
select * from
(
select row_number() over(partition by '分组' order by '日期') as rownum -- 排序并分组
, * -- 所需显示的字段
from 表
) as T
where T.rownum = 1

对每组的数据按日期排序并加上行号
取出时只取行号为1,也就是第一条数据。
更多追问追答
追问
这种方法,能同时一次对两个字段分组波,即两个字段内容相同为一组
追答
可以的
逗号分开

select * from
(
select row_number() over(partition by 'Gr1',‘Gr2’[, ...]
order by 'Sort1', 'Sort2'[, ...]) as rownum -- 排序并分组
, * -- 所需显示的字段
from 表
) as T
where T.rownum = 1
百度网友a2988ce
2013-05-03 · TA获得超过223个赞
知道小有建树答主
回答量:302
采纳率:100%
帮助的人:178万
展开全部
你对分组的理解不到位
分组是指把可些的数据使用聚合函数(max,min,avg)等计算
分组后的每组本身会变成一行
不存在每组的前一条
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
及安铌9W
2013-05-03 · TA获得超过319个赞
知道小有建树答主
回答量:343
采纳率:0%
帮助的人:167万
展开全部
select top 1 * from 表 group by 分组条件 order by 日期
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式