T-SQL DateDiff - 按“整小时前”分区,而不是“自 00 点后的分钟数”分区

2023-12-19

我有一个带有时间戳的表,我想将该表划分为一个小时的间隔,从现在开始向后几个小时。我无法使用 T-SQL 获得所需的结果DATEDIFF http://msdn.microsoft.com/en-us/library/ms189794.aspx函数,因为它计算两个日期之间分针经过 12 的次数 - 我想要分针经过的次数现在在哪里时间戳和现在之间。

在 T-SQL 中是否有一种简单的方法可以做到这一点?

Update:为了回应评论,这里有一些示例数据、我当前使用的查询和我得到的结果,以及我想要的结果。

样本数据:

TimeStamp
*********
2010-07-20 11:00:00.000
2010-07-20 10:44:00.000
2010-07-20 10:14:00.000
2010-07-20 11:00:00.000
2010-07-20 11:40:00.000
2010-07-20 10:16:00.000
2010-07-20 13:00:00.000
2010-07-20 12:58:00.000

当前查询:

SELECT TimeStamp, DATEDIFF(HOUR, TimeStamp, CURRENT_TIMESTAMP) AS Diff FROM ...

Results:


    TimeStamp                   Diff
    *********                   ****
    2010-07-20 11:00:00.000     2
    2010-07-20 10:44:00.000     3
    2010-07-20 10:14:00.000     3
    2010-07-20 11:00:00.000     2
    2010-07-20 11:40:00.000     2
    2010-07-20 10:16:00.000     3
    2010-07-20 13:00:00.000     0
    2010-07-20 12:58:00.000     1  

我更想要的是:


    -- The time is now, for the sake of the example, 13:40

    TimeStamp                   Diff
    *********                   ****
    2010-07-20 11:00:00.000     3 -- +1
    2010-07-20 10:44:00.000     3
    2010-07-20 10:14:00.000     4 -- +1
    2010-07-20 11:00:00.000     3 -- +1
    2010-07-20 11:40:00.000     2 or 3 -- edge case, I don't really care which
    2010-07-20 10:16:00.000     4 -- +1
    2010-07-20 13:00:00.000     1 -- +1
    2010-07-20 12:58:00.000     1  

我已经用 a 标记了更改的结果+1。另外,我并不关心这是 0 索引还是 1 索引,但基本上,如果现在是 13:40,我希望获得相同值的时间跨度为


    12:40-13:40    1 (or 0)
    11:40-12:40    2 (or 1)
    10:40-11:40    3 (or 2)
    09:40-10:40    4 (or 3)  

你能不能只用DATEDIFF(minute,..然后将结果除以 60 并取整数值。例如

 SELECT DATEDIFF(minute, '2010-07-20 06:00', GETDATE())/60

我相信这将被隐式转换为 int,因为 datediff 返回一个 int,它给出了整个小时,没有四舍五入。

要使用更新帖子中的确切查询:

SELECT TimeStamp, (DATEDIFF(minute, TimeStamp, CURRENT_TIMESTAMP) /60) AS Diff FROM ...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

T-SQL DateDiff - 按“整小时前”分区,而不是“自 00 点后的分钟数”分区 的相关文章

随机推荐

  • jQuery/原型冲突

    我正在使用 jQuery hoverIntent js 脚本来构建大型下拉菜单系统 其灵感来自于 Son Tonaka 的大型下拉菜单 w CSS 和 jQuery sohtanaka com web design mega drop do
  • List 抛出 ConcurrentModificationException 但 set 不抛出 ConcurrentModificationException? [复制]

    这个问题在这里已经有答案了 我有以下两个java类 import java util public class ArrayListTest032 public static void main String ar List
  • 防止网页抓取

    我目前是开发一个应用程序的团队的一员 该应用程序包括前端客户端 通过这个客户端 我们发送用户数据 每个用户都有一个用户 ID 客户端通过 RESTful API 与我们的服务器对话 向服务器请求数据 例如 假设我们有一个书籍数据库 用户可以
  • 将部分模式从 sed 传递到 shell

    我有一个文件 其中包含以下格式的行 w1 1 x w2 4 b w3 2 d 该行中的每个单词 标记 例如 w1 1 x 由 3 部分组成 第一个部分显示某个索引 本例中为 w1 第二个是整数 本例中为 1 第三个是一个字符 在本例中为 x
  • 使用背景颜色在 UIDatePicker 上设置角半径

    我有一个UIDatePicker在我看来 并设置了背景颜色UIDatePicker self datePicker backgroundColor UIColor lightTextColor self datePicker layer c
  • php:将 ntlm 凭据转发给curl

    我有一个动态 php 页面 我需要使用 get 参数来调用它 然后我想将生成的 html 放入一个字符串中并稍后使用它 我正在尝试用于 Web 服务的 tonic 框架 所以这类似于PHP 将动态生成 和回显 的 HTML 读取到字符串中
  • PHP 重定向与自定义标头

    我正在编写一个基本的授权系统 但我有点挣扎 涉及两个文件 index php and login php 登录表单非常简单 它在里面index php fieldset class right fieldset
  • 服务器控件如何违反 MVC 设计模式?

    我问的原因是 tvanfosson 对他对另一个问题的回答的 第一个 评论我的问题 https stackoverflow com questions 3689236 what are the key concepts to know wh
  • 相同的匿名结构是否兼容?

    考虑这个代码片段 include
  • github 是否允许预接收挂钩?

    GitHub 是否允许预接收或更新挂钩 我想要做的是防止主分支被推送到 即 master hotfix develop 并要求通过 GitHub 拉取请求合并它们 这是一个私人存储库 因此 GitHub 风格的分叉不是一个选择 任何有关如何
  • 从 BLOB mysql python 写入文件

    我正在尝试从数据库获取文件并将其写入磁盘 该文件存储为 BLOB 现在我有以下代码 usr bin python import MySQLdb db2 MySQLdb connect host localhost user root pas
  • Tensorflow ValueError:仅使用命名参数调用“sparse_softmax_cross_entropy_with_logits”(标签=...,logits=...,...)

    上述错误是由传统代码引起的 tf nn sigmoid cross entropy with logits self D logits tf ones like self D 使用 Tensorflow V1 0 或更高版本时会发生这种情况
  • 将一长逗号字符串拆分为多列新表

    我是 SQL 的犹太教徒 请原谅我的无知 我有一张名为 temp 的表 其中包含一个带有一个长逗号分隔字符串的字段 因此 Field1 Apples oranges pears berries melons 我想将上述内容插入到具有预定义列
  • 抑制生成的 C# 代码的警告

    我已经为我的 VS 项目打开了 将警告视为错误 这意味着我会收到缺少文档的错误 对于这个特定项目来说是一个很好的提醒 但是 部分代码是由自定义工具生成的 该工具不会插入 xml 文档 因此我希望仅忽略生成的代码 而不是整个项目 缺少的 xm
  • AttributeError:“模型”对象没有属性“predict_classes”

    我正在尝试使用预先训练和微调的深度学习模型来预测验证数据 该代码遵循 Keras 博客中 使用很少的数据构建图像分类模型 中提供的示例 这是代码 import numpy as np from keras preprocessing ima
  • 这是因为互斥量没有释放吗?

    我读过这个将我们的单线程服务器变成多线程服务器 https doc rust lang org book ch20 02 multithreaded html 并试图去实施它 我写了这个 use std sync mpsc channel
  • 如何 git tag 所有子模块?

    我想标记我的项目的所有子模块 我尝试这样做 git submodule foreach git tag tagName 但它似乎只是返回而没有错误 什么也没做 编辑 这是我尝试的结果 有人可以告诉我如何正确标记所有子模块吗 注意 这是一个非
  • 以小于帧大小的增量分页 UIScrollView

    我有一个滚动视图 其宽度与屏幕相同 但高度只有约 70 像素 它包含许多 50 x 50 的图标 周围有空间 我希望用户能够从中进行选择 但我总是希望滚动视图以分页方式运行 始终以图标停止在正中心 如果图标是屏幕的宽度 这不会成为问题 因为
  • Python 2 与 3 中的 Eval 范围

    我在 Python 3 中遇到了奇怪的 eval 行为 当在列表理解中调用 eval 时 不会拾取局部变量 def apply op x y z 0 5 0 25 0 75 op x y z return eval o for o in o
  • T-SQL DateDiff - 按“整小时前”分区,而不是“自 00 点后的分钟数”分区

    我有一个带有时间戳的表 我想将该表划分为一个小时的间隔 从现在开始向后几个小时 我无法使用 T SQL 获得所需的结果DATEDIFF http msdn microsoft com en us library ms189794 aspx函