【问题标题】:Get minimum time and max time for each day in sql query [closed]在sql查询中获取每天的最短时间和最长时间[关闭]
【发布时间】:2020-05-04 12:20:06
【问题描述】:

我有一个数据,其中包括 Processeddate、开始时间和结束时间。我需要获取每天的最短开始时间和最长结束时间。

处理日期应该是第一列

【问题讨论】:

  • 你试过什么?这是一个基本的GROUP BY 查询。
  • 您能否为您的表结构提供一些示例数据以及预期输出?@PechiRaj
  • 这与您之前的问题有什么不同:stackoverflow.com/questions/61549175/… ?我怀疑如果你提供样本数据和期望的结果,答案就会被传递。预计您会付出一些努力。

标签: sql sql-server tsql date group-by


【解决方案1】:

只需使用min()max() 函数,如下所示。

;WITH cte
AS (
    SELECT Cast(processedDate AS DATE) AS processedDate
        ,min(startTime) minStartTime
        ,max(endTime) maxEndTime
    FROM mytable
    GROUP BY Cast(processedDate AS DATE)
    )
SELECT *
FROM cte
WHERE month(processedDate) = 1
    AND year(processedDate) = 2020
ORDER BY processedDate

db<>fiddle

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-21
    • 2021-03-04
    • 1970-01-01
    • 2016-05-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多