sql server数据库中,有一列是时间类型的数据,获取这一列,并可以比较最后两条时间数据的差值.
sqlserver数据库中,有一列是时间datetime类型的数据,如何获取这一列,并可以比较最后两条时间数据的差值.也就是可以获取时间差?谢谢...
sql server数据库中,有一列是时间datetime类型的数据,如何获取这一列,并可以比较最后两条时间数据的差值.也就是可以获取时间差?谢谢
展开
展开全部
declare @a varchar(10),@b varchar(10),@c datetime,@d datetime
select top 1 @a = Area.id,@c = Area.code from Area order by code desc
select top 1 @b = Area.id,@d = Area.code from Area where id <> @a order by code desc
select @c - @d
亲,试试困衫这个,把表名和列卖尺枝名换一下,id是主键中敏
select top 1 @a = Area.id,@c = Area.code from Area order by code desc
select top 1 @b = Area.id,@d = Area.code from Area where id <> @a order by code desc
select @c - @d
亲,试试困衫这个,把表名和列卖尺枝名换一下,id是主键中敏
追问
我试了一下,取到的时间差有点不对,
数据库表
Id Date
1 2012-9-14 19:26:13
2 2012-9-14 19:27:26
3 2012-9-14 19:27:17
4 2012-9-14 19:28:54
我想找到最后两条的时间差,希望你能再帮忙看看,谢谢
追答
上面数据
create table test(
id int PRIMARY key,
Date datetime
)
insert into [test] values('1','2012-9-14 19:26:13')
insert into [test] values('2','2012-9-14 19:27:26')
insert into [test] values('3','2012-9-14 19:27:17')
insert into [test] values('4','2012-9-14 19:28:54')
declare @a int,@b int,@c datetime,@d datetime
select top 1 @a = [test].id,@c = [test].[Date] from [test] order by [test].id desc
select top 1 @b = [test].id,@d = [test].[Date] from [test] where id @a order by [test].id desc
Select cast(replace(replace(replace(convert(varchar,@c,120),'-',''),':',''),' ','') as bigint) - cast(replace(replace(replace(convert(varchar,@d,120),'-',''),':',''),' ','') as bigint)
查询结果 137 单位是秒
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询