当前位置:Gxlcms > mssql > 按日期选择最晚日期与最早日期对应的数的差值

按日期选择最晚日期与最早日期对应的数的差值

时间:2021-07-01 10:21:17 帮助过:72人阅读

表结构如下

number date
8 2009/1/11 2:00
7 2009/1/11 5:00
6 2009/1/11 12:00
5 2009/1/11 18:00
4 2009/1/12 4:00
3 2009/1/12 10:00
2 2009/1/12 12:00
1 2009/1/11 17:00

想得到当天的最早时间与最晚时间的number的差值, 即如下的结果:


2
3
代码如下:

create table #date
(
number int identity(1,1) primary key,
date datetime
)
insert into #date select '2009/1/11 17:00'
insert into #date select '2009/1/12 12:00'
insert into #date select '2009/1/12 10:00'
insert into #date select '2009/1/12 4:00'
insert into #date select '2009/1/11 18:00'
insert into #date select '2009/1/11 12:00'
insert into #date select '2009/1/11 5:00'
insert into #date select '2009/1/11 2:00'

select (d2.number-d1.number) number
from
(
select number,date from #date where date in
(select max(date) from #date group by convert(varchar(10),date,120) )
) d1
,
(
select number,date from #date where date in
(select min(date) from #date group by convert(varchar(10),date,120) )
) d2
where convert(varchar(10),d1.date,120)=convert(varchar(10),d2.date,120)

number
-----------
2
3

您可能感兴趣的文章:

  • SQL Server 日期函数CAST 和 CONVERT 以及在业务中的使用介绍
  • SQLserver中用convert函数转换日期格式的方法
  • SQL Server 日期相关资料详细介绍
  • sqlserver获取当前日期的最大时间值
  • sqlserver中如何查询出连续日期记录的代码
  • sql 查询本年、本月、本日记录的语句,附SQL日期函数
  • Sqlserver 常用日期时间函数
  • 根据日期知道当天是星期几的手动计算方法
  • MSSQL 计算两个日期相差的工作天数的语句
  • SQL Server自动生成日期加数字的序列号
  • SQL 返回期间内的所有日期
  • 数据库 日期加减处理
  • sql语句中如何将datetime格式的日期转换为yy-mm-dd格式
  • 在SQL中使用convert函数进行日期的查询的代码
  • SQL Server日期计算
  • SQL Server各种日期计算方法(收藏)
  • SqlServer中的日期与时间函数

人气教程排行