一条sql获取每个类别最新的一条记录
2016-10-15 20:26
417 查看
1.初始化数据
2.示例:
create table Products ( id int identity(1,1), name nvarchar(100), categroy int, addtime datetime , ) insert into Products (name ,categroy,addtime) values ('手机',1,'2016-10-01 00:00:00.000'), ('笔记本',1,'2016-10-02 00:00:00.000'), ('照相机',1,'2016-10-03 00:00:00.000'), ('上衣',2,'2016-10-01 00:00:00.000'), ('短袖',2,'2016-10-02 00:00:00.000'), ('裤子',2,'2016-10-03 00:00:00.000')
2.示例:
--id是主键 select *From Products A where id in ( select top 1 id from Products where categroy=A.categroy order by addtime desc ) --id 不是主键 select *From Products A where 1>( select count(1) from Products where categroy=A.categroy and addtime>a.addtime ) --row_number select *From ( select row_number() over (partition by categroy order by addtime desc) rownum,* from Products ) A where rownum<2 --cross apply select distinct B.* from Products A cross apply ( select top 1 * From Products where categroy=A.categroy order by addtime desc ) B
相关文章推荐
- 获取信息列表中每个类别下的最新一条记录的 SQL语句
- sqlserver 查询数据表中每个类别最新的一条记录
- SQL 获取插入后的最新一条记录ID号
- 获取分组后取某字段最大一条记录(求每个类别中最大的值的列表)
- 获取分组后取某字段最大一条记录(求每个类别中最大的值的列表)
- 每个类别提取最新一条记录
- 获取分组后取某字段最大一条记录(求每个类别中最大的值的列表)
- 获取分组后取某字段最大一条记录(求每个类别中最大的值的列表)
- 获取分组后取某字段最大的一条记录(求每个类别中最大的值的列表)
- 获取分组后取某字段最大一条记录(求每个类别中最大的值的列表)
- mysql连接查询-主从表连接查询:获取从表最新一条表记录;获取没有从表记录的主表信息
- 想用一条sql取出每个分类的前两条记录
- 同类别的产品销售记录各要一条最新时间的
- sql语句如何按产品类别查询,取出每个类别的前三条记录
- 如何查询数据库中ID的最新的一条记录 - MS-SQL Server / 基础类
- 获取MySQL的表中每个userid最后一条记录的方法
- SQL如何获取上一条..下一条..首尾记录
- 获取每个类别前两条记录(northwind数据库)
- SQL怎么随机提取出一条信息 mysql 获取随机记录
- SQL获取表中最新插入的记录