如何获取最接近指定时间的一组记录

wen1512 2014-07-03 04:45:10

比如我给个时间参数'2014-06-20 16:02:00.000',如何查询出RecordTime_dt最接近这个时间的一组记录.
...全文
126 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
AcHerat 元老 2014-07-03
  • 打赏
  • 举报
回复


select *
from (
    select *
           ,rid = row_number() over (partition by TankNo_ch order by abs(datediff(ss,RecordTime_dt,'2014-06-20 16:02:00.000')))
    from tb
) tmp
where rid = 1

wen1512 2014-07-03
  • 打赏
  • 举报
回复
引用 1 楼 fredrickhu 的回复:
select top 1 * from tb order by abs(datediff(ss,RecordTime_dt,'2014-06-20 16:02:00.000')
如何根据TankNo_ch分组获取一组数据呢
AcHerat 元老 2014-07-03
  • 打赏
  • 举报
回复

select *
from (
    select *,rid = row_number() over (order by abs(datediff(ss,RecordTime_dt,'2014-06-20 16:02:00.000')))
    from tb
) tmp
where rid <= 1
wen1512 2014-07-03
  • 打赏
  • 举报
回复
如何根据TankNo_ch分组获取一组数据呢
--小F-- 2014-07-03
  • 打赏
  • 举报
回复
select top 1 * from tb order by abs(datediff(ss,RecordTime_dt,'2014-06-20 16:02:00.000')

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧