读书人

关于一个查询的有关问题返回结果

发布时间: 2012-03-18 13:55:39 作者: rapoo

关于一个查询的问题,返回结果


ID RYXM shijian

2 张三 2007-5-1
3 王三 2007-5-2
4 张三 2007-5-8
5 王三 2007-4-2
6 王三 2007-3-5
7 赵四 2007-2-5


张三这个名字第一个出现和第二次出现的时间跨度

如果只出现一次,我想知道他出现时间到今天有多长勒,


谁能帮帮我额,急哈




[解决办法]
--try

create table T( ID int, RYXM nvarchar(10), shijian datetime)
insert t select 2, '张三 ', '2007-5-1 '
union all select 3, '王三 ', '2007-5-2 '
union all select 4, '张三 ', '2007-5-8 '
union all select 5, '王三 ', '2007-4-2 '
union all select 6, '王三 ', '2007-3-5 '
union all select 7, '赵四 ', '2007-2-5 '


select RYXM,datediff(day,min_shijian,case when min_shijian=max_shijian then getdate() else max_shijian end)
from
(
select RYXM, min(shijian) as min_shijian,
max(shijian) as max_shijian
from T
group by RYXM
)tmp

读书人网 >SQL Server

热点推荐