【问题标题】:SQL Query Only Want Midnight SamplesSQL 查询只需要午夜样本
【发布时间】:2019-07-15 09:44:27
【问题描述】:

我正在对累加器进行查询,我只想要从 00.00.00 开始的样本。我已经搜索过是否可以在时间戳字段上使用通配符,但没有找到答案。我已经注释掉了下面的行,我尝试在表中的“ts”(时间戳)字段中使用“00:00:00”,因为它不起作用。有没有办法让我只能从桌子上提取午夜样本?

SELECT TOP (100) percent
       [ts] AS 'Timestamp'
      ,[value]
  FROM [enteliwebDB].[dbo].[UASTP_150000_TL63]
  where ts > dateadd(day, datediff(day, 0 ,getdate())-31, 0)
  --and ts = '00:00:00'

Timestamp                   value
2019-01-21 00:00:00.0040000 1122981.5
2019-01-21 01:00:00.0030000 1125681.625
2019-01-21 02:00:00.0020000 1128380.75
2019-01-21 03:00:00.0020000 1131080.5
2019-01-21 04:00:00.0020000 1133778.625
2019-01-21 05:00:00.0020000 1136477.625
2019-01-21 06:00:00.0030000 1139177.875
2019-01-21 07:00:00.0010000 1141877.375
2019-01-21 08:00:00.0030000 1144579.125
2019-01-21 09:00:00.0010000 1147277.625
2019-01-21 10:00:00.0030000 1149976.375
2019-01-21 11:00:00.0000000 1152676.25
2019-01-21 12:00:00.0020000 1155376.75
2019-01-21 13:00:00.0030000 1158078.25
2019-01-21 14:00:00.0040000 1160776.875
2019-01-21 15:00:00.0030000 1163476.125
2019-01-21 16:00:00.0000000 1166175
2019-01-21 17:00:00.0000000 1168872.75
2019-01-21 18:00:00.0020000 1171571.5
2019-01-21 19:00:00.0030000 1174271.875
2019-01-21 20:00:00.0010000 1176972.625
...

【问题讨论】:

    标签: sql-server tsql timestamp


    【解决方案1】:

    您可以使用转换输入TIME,并将其与00:00:00 进行比较:

    AND CONVERT(TIME, [ts]) = '00:00:00'
    

    或者,如果您想要所有记录,无论毫秒是否始终为 0(如您的示例中所示):

    AND CONVERT(TIME, [ts]) >= '00:00:00'
    AND CONVERT(TIME, [ts])  < '00:00:01'
    

    【讨论】:

      【解决方案2】:

      你有毫秒,你可以通过只包括午夜后第一秒的时间来四舍五入。我正在使用 datediff 来计算自我们所在的当天午夜以来经过了多少秒

      SELECT TOP (100) percent
             [ts] AS 'Timestamp'
            ,[value]
        FROM [enteliwebDB].[dbo].[UASTP_150000_TL63]
        where ts > dateadd(day, datediff(day, 0 ,getdate())-31, 0) and (DATEDIFF(second,cast(ts as date),ts)) = 0
      

      【讨论】:

        猜你喜欢
        • 2019-02-15
        • 2020-12-15
        • 2022-11-18
        • 1970-01-01
        • 2016-01-13
        • 2021-09-23
        • 2011-07-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多