首頁  >  文章  >  資料庫  >  sql 选取每个分组中的第一条数据

sql 选取每个分组中的第一条数据

WBOY
WBOY原創
2016-06-07 17:43:021662瀏覽

--1.创建测试表 Create Table #Order1 ( OrderName varchar(50), RequestDate datetime, OrderCount int ) -- 插入测试数据 insert into #Order1 values('衣服','2013-06-02',2) insert into #Order1 values('衣服','2013-06-03',4) insert into #Order1 val

--1.创建测试表
Create Table #Order1
(
OrderName varchar(50),
RequestDate datetime,
OrderCount int
)
-- 插入测试数据
insert into #Order1 values('衣服','2013-06-02',2)
insert into #Order1 values('衣服','2013-06-03',4)
insert into #Order1 values('衣服','2013-06-04',5)

insert into #Order1 values('鞋','2013-06-02',3)
insert into #Order1 values('鞋','2013-06-03',7)
insert into #Order1 values('鞋','2013-06-04',8)

--选取每组中时间最近的一条

-- 方法1

select * from
(
select ROW_NUMBER()over(PARTITION By OrderName ORDER BY RequestDate DESC) as rownum, OrderCount,OrderName
from #Order1
) T
where T.rownum = 1

--group by OrderName
drop table #Order1

--未完待续

,香港空间,网站空间,香港服务器租用
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn