跳到主要内容 跳到补充内容

inweektodate - 脚本和图表函数

此函数用于返回 True,如果 timestamp 位于包含 base_date 为止以及包括 base_date 最后毫秒的星期部分以内。

语法:  

InWeekToDate (timestamp, base_date, period_no [, first_week_day])

返回数据类型: 布尔值

信息注释

Qlik Sense 中,布尔 true 值由 -1 表示,false 值由 0 表示。

inweektodate 函数图表

inweektodate 函数将返回 TRUE 值的日期范围示例图。

inweektodate() 函数使用 base_date 参数来识别一周段的最大边界日期,以及基于 FirstWeekDay 系统变量(或用户定义的 first_week_day 参数)的一周开始的相应日期。定义本周段后,当将规定的日期值与该段进行比较时,函数将返回布尔结果。

适用场景

inweektodate() 函数返回布尔结果。通常,这种类型的函数将用作 if 表达式中的条件。这将返回一个聚合或计算,这取决于评估的日期是否发生在特定日期之前的一周内。

例如,inweektodate() 函数可用于计算截至特定日期的指定周内的所有销售额。

参数
参数 说明
timestamp 想要用来与 base_date 进行比较的日期。
base_date 日期用于计算星期的值。
period_no 该星期可通过 period_no 偏移。period_no 为整数,其中值 0 表示该星期包含 base_dateperiod_no 为负数表示前几个星期,正数表示随后的几个星期。
first_week_day

默认情况下,一周的第一天是星期日(由 FirstWeekDay 系统变量确定),从星期六和星期日之间的午夜开始。first_week_day 参数取代 FirstWeekDay 变量。要指示一周从另外一天开始,指定一个介于 0 和 6 之间的标志。

对于从周一开始到周日结束的一周,周一使用 0,周二使用 1,周三使用 2,周四使用 3,周五使用 4,周六使用 5,周日使用 6。

 

函数示例
示例 交互
inweektodate('01/12/2006', '01/12/2006', 0) 返回 TRUE
inweektodate('01/12/2006', '01/11/2006', 0) 返回 FALSE
inweektodate('01/12/2006', '01/18/2006', -1) 返回 FALSE
由于将 period_no 指定为 -1,作为衡量 timestamp 的依据的有效日期为 01/11/2006
inweektodate('01/11/2006', '01/12/2006', 0, 3 ) 返回 FALSE,由于将 first_week_day 指定为 3(星期四),这使得本周的第一天 01/12/2006 之后一周包含 01/12/2006

这些主题可以帮助您使用此函数:

相关主题
主题 默认标志/值 说明
FirstWeekDay 6 / 周日 定义每周的开始日期。

区域设置

除非另有规定,本主题中的示例使用以下日期格式:MM/DD/YYYY。日期格式已经在数据加载脚本中的 SET DateFormat 语句中指定。由于区域设置和其他因素,系统中的默认日期格式可能有所不同。您可以更改以下示例中的格式以满足您的要求。或者,您可以更改加载脚本中的格式以匹配这些示例。有关详细信息,请参阅修改应用程序和脚本的区域设置

应用程序中的默认区域设置基于用户配置文件。这些区域格式设置与 Qlik Cloud 用户界面中显示的语言无关。Qlik Cloud 将以与您使用的浏览器相同的语言显示。

如果你是应用程序创建者,你可以为自己创建的应用程序设置默认区域。有关更多信息,请参阅设置 Qlik Cloud 分析 中创建应用程序和脚本所用的首选区域设置

示例 1 – 没有其他参数

示例 2 – period_no

示例 3 – first_week_day

示例 4 – 图表对象

示例 5 – 场景

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们如何改进!