我的表中有一列“开始”,另一列“结束”表示任务何时开始,以及任务结束时,我希望有一个条形显示,显示在特定时间间隔内正在完成的任务的数量。
例如,从下表

我希望能够看到,从07/12/2021 21:00到07/12/2021 22:00,有3个任务正在执行(第1行、第2行、第3行)。
而且,由于我将有数千行,所以我希望使用metabase中的date小部件来指定时间范围。
从上个星期开始,我一直在努力解决这个问题,我试图创建auxiliar问题,然后在哪里查询,但最后我唯一的成功是从一天开始对24小时进行硬编码,但是后来我无法使用时间小部件,每次我想检查特定的一天,我都需要自己在sql上指定日期,而且我只能检查24到24小时,而不是从02/12/2021 6:00到04/12/2021 18:00。
我的元数据库正在PostgreSQL数据库上运行。这在Metabase上有可能吗?如果不是的话,你有什么建议来建立这个项目呢?其他花纹?纯SQL?Python?
非常感谢
发布于 2021-12-12 16:09:28
我不确定metabase,但从PostgreSQL的角度来看,这需要使用范围类型,特别是tsrange/tstzrange,这取决于您是否有时区信息。
因此,一个查询可以是:
SELECT
*
FROM "someTable"
WHERE
tsrange("Begin At", "End At", '[)')
&&
tsrange('02/12/2021 6:00', '04/12/2021 18:00', '[)')然而,我不知道你如何从你的元数据库用户界面得到'02/12/2021 6:00‘和'04/12/2021 18:00’。
https://stackoverflow.com/questions/70325058
复制相似问题