繁体   English   中英

在 AWS Quicksight 中从周一开始一周

[英]Start week on monday in AWS Quicksight

我知道我可以在 AWS Quicksight 中将日期字段粒度更改为周,而且我还可以按周数显示日期。 但据我了解,Quicksight 将星期日定义为一周的开始,我需要它是星期一。

有什么方法可以在 AWS Quicksight 中从周一开始一周吗?

这是您可以添加的计算字段的公式,它将从星期一开始按周对您的日期进行分组。 您应该可以用您的字段名称替换{date_date}并将其复制/粘贴到公式框(包括换行符)中,这样就可以了。

addDateTime(
    1, 
    'DD', 
    truncDate(
        'WK',
        ifelse(
            extract(
                'WD',
                {date_date}
            ) = 1, 
            addDateTime(
                -1, 
                'DD', 
                {date_date}
            ), 
            {date_date}
        )   
    )
)

此字段将等于您的日期所属的那一周开始的星期一。

您可以将所有内容放在一行中,但我添加了换行符以提高可读性。

它主要检查日期是否在星期日,并将其移动到前一周,然后在正常的 trunc 函数中添加一天,以便每周从星期一开始。

根据文档https://docs.aws.amazon.com/quicksight/latest/user/truncDate-function.html

WK:这将返回日期的周部分。 一周从周日在 Amazon QuickSight 中开始。

您可以使用过滤器从这里开始在此处输入图片说明

在分析中使用过滤器和滚动日期作为周时,这仍然是一个问题。 在此处输入图像描述

AWS 社区论坛中有一个开放线程。

https://community.amazonquicksight.com/t/starting-weeks-on-monday-show-gaps-on-custom-weekly-groupings/4222

作为我的解决方法,我建议定义一个列(在数据集中或作为计算字段)来表示year_week_iso (即 2023-W01 或 202301,如果您希望具有 integer 值)。

然后可以使用此列对数据进行分组,以便在一周从星期一开始时显示随时间变化的趋势。

也可以利用此列的 integer 版本显示最新的一周数据,方法是设置一个基于max(year_week_iso_integer)的 Top 1 过滤器→示例 Amazon Quicksight 过滤器以获取当前周

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM