gpt4 book ai didi

sql - 计算利用率 - 计算可用分钟数的工作分钟数

转载 作者:行者123 更新时间:2023-12-02 01:09:13 24 4
gpt4 key购买 nike

尝试计算员工上类打卡的总分钟数。需要注意的是这里的计时方式我不能只使用最小值/最大值/下一个/上一个,因为它不是顺序的。

用一个例子更容易解释。这里有一些简单的数据,被缩小到只有一名员工一天。我删除了订单/操作,但意识到下面的每条记录都是特定订单和该订单的操作。记录互不影响,任何记录都可以是最新的。

STARTDATETIME   STOPDATETIME
8/21/2017 6:57:00 AM 8/21/2017 10:45:00 AM
8/21/2017 6:57:00 AM 8/21/2017 10:45:00 AM
8/21/2017 6:57:00 AM 8/21/2017 10:45:00 AM
8/21/2017 6:57:00 AM 8/21/2017 10:46:00 AM
8/21/2017 6:57:00 AM 8/21/2017 11:28:00 AM
8/21/2017 6:58:00 AM 8/21/2017 11:28:00 AM
8/21/2017 11:58:00 AM 8/21/2017 12:05:00 PM

如果我手动计算这个,我可以看到这个人从 6:57 到 11:28 不停地工作(271 分钟)

然后他们也从 11:58-12:05(7 分钟)开始工作

所以他们一天的总时长是 278 分钟。不过,我无法弄清楚如何计算它。

我确实可以随时获得的其他数据是他们一天的上下类时间,所以如果更容易计算他们没有打卡的分钟数,我们可以得到它作为出色地。 (本例中打卡时间为 5 点 49 分和 12 点 30 分,共计 401 分钟)

很想听听任何想法。我将在 Tableau 中使用这些数据显示图表/图形,而我正在使用 HANA 数据库作为后端。

最佳答案

对于这类问题,我肯定会推荐在 Tableau 之外用 python 转换和准备数据。 Tableau 非常擅长可视化时间序列中的数据点,但是,您的数据是不规则的,并且间隔不均匀,虽然 Table 和 Level of Detail 计算可以跨行,但您的问题是中等水平的,很难回答使用您尝试使用的工具。

如果您不能执行中间转换,并且根据数据的数量或记录和时间跨度,您可以通过对值表执行笛卡尔连接(或可能混合)来强制执行常规时间序列在您查看的日期范围内的每一分钟。然后过滤(或创建一个二进制字段)所有打开时间 >= 连接数据且关闭日期 < 混合日期的值。这应该为您提供他们工作的每一分钟的记录和日期,从而使对数据执行计算变得容易得多。在您的情况下,您可以对数字记录求和以获得工作分钟数。

根据您的目标,此线程有很多关于整理时间序列数据的有用信息。它还包含有关如何在 Tableau 中执行交叉联接的更多详细信息 https://community.tableau.com/thread/151387

关于sql - 计算利用率 - 计算可用分钟数的工作分钟数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45885063/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com