首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

sql简单查询解决思路

2012-04-28 
sql简单查询表tab 字段如下id,name datetime1张三2012-01-02 09:21:212张三2012-01-02 23:23:233张四2012-

sql简单查询
表tab 字段如下
id,name datetime
1 张三 2012-01-02 09:21:21
2 张三 2012-01-02 23:23:23
3 张四 2012-01-03 09:21:21

查出 根据name分组,如果name内容有重复的就取datetime时间最小的那个
结果如下

1 张三 2012-01-02 09:21:21
3 张四 2012-01-03 09:21:21
谢谢各位!!!!

[解决办法]

SQL code
create table Test(ID int identity (1,1),UserName varchar(10),Times datetime)insert into Test values('张三','2012-01-02 09:21:21')insert into Test values('张三','2012-01-02 23:23:23')insert into Test values('张四','2012-01-03 09:21:21')select UserName,Min(Times) from Test group by UserName
[解决办法]
select id,name,[datetime] from
(select *,row_number() over(partition by name order by [datetime]) as rownum
from tab) as tb1
where rownum<2

热点排行