SQL (BigQuery) timediff 在 2 个时间戳之间以分钟为单位,不包括周末和仅从上午 5 点到下午 6 点

问题描述 投票:0回答:0

我对 SQL 广告还很陌生,我不确定是否有可能在 Bigquery 上创建这种查询。我有 2 列都是

timestamp
格式,例如
2023-02-03 08:54:05 UTC
。第一列称为
start
,第二列称为
end
。我需要找到
timediff
中那两个冒号之间的
minutes
但是:

  1. 只计算

    hours
    5:00 A.M
    6:00 P.M
    之间的差异。例如,如果
    start
    2023-01-02
    5:58 P.M
    end
    2023-01-03
    5:01 A.M 
    ,结果应该是3分钟。

  2. 从计算中排除周六和周日

这可能使用 BigQuery 吗?我没有看到任何文档在 Google Cloud 上的时间函数documentation 中排除某些时间范围。我知道

TIME_DIFF()
但似乎没有办法排除一个时间范围。

我是否应该创建一个包含未来几年所有星期六和星期日作为日期的列表来帮助我进行此查询?

sql google-bigquery
© www.soinside.com 2019 - 2024. All rights reserved.