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

inquartertodate - 脚本和图表函数

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

语法:  

InQuarterToDate (timestamp, base_date, period_no [, first_month_of_year])

返回数据类型: 布尔值

信息注释

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

InquarteTodate 函数图表

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

inquartertodate() 函数将一年分为四个相等的季度,即 1 月 1 日至 12 月 31 日(或用户定义的年初及其相应的结束日期)。使用 base_date,该函数将对特定的季度进行分段,同时 base_date 识别该季度分段的哪个季度和允许的最大日期。最后,当将规定的日期值与该段进行比较时,该函数返回布尔值结果。

参数
参数 描述
timestamp 想要用来与 base_date 进行比较的日期。
base_date 日期用于计算季度的值。
period_no

该季度可通过 period_no 偏移。period_no 为整数,其中值 0 表示该季度包含 base_dateperiod_no 为负数表示前几季,为正数则表示随后的几季。

first_month_of_year 如果您不想从一月开始处理(财政)年,可在 first_month_of_year 中指定一个介于 2 和 12 之间的值。

适用场景

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

例如,inquartertodate() 函数可用于识别截至特定日期的一个季度内制造的所有设备。

函数示例
Example 结果
inquartertodate('01/25/2013', '03/25/2013', 0) 返回 TRUE,由于 timestamp 的值,01/25/2013,其在 01/01/2013 至  03/25/2013 的三个月内 ,其中有 base_date 的值 , 03/25/2013。
inquartertodate('04/26/2013', '03/25/2013', 0) 返回 FALSE,因为 04/26/2013 在与前一示例相同的时间段之外。
inquartertodate('02/25/2013', '06/09/2013', -1) 返回 TRUE,因为 period_no 的值 -1 将搜索期间切换回三个月长度(一年的一个季度)的期间。这让搜索期间为 01/01/2013 至 03/09/2013.
inquartertodate('03/25/2006', '04/15/2006', 0, 2) 返回 TRUE,因为 first_month_of_year 的值设置为 2,这让搜索期间为 02/01/2006 至 04/15/2006 而非 04/01/2006 至 04/15/2006。

区域设置

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

应用程序中的默认区域设置基于安装 Qlik Sense 的计算机或服务器的区域系统设置。如果您访问的 Qlik Sense 服务器设置为瑞典,则数据加载编辑器将使用瑞典地区设置的日期、时间和货币。这些区域格式设置与 Qlik Sense 用户界面中显示的语言无关。Qlik Sense 将以与您使用的浏览器相同的语言显示。

示例 1 – 没有其他参数

示例 2 – period_no

示例 3 – first_month_of_year

示例 4 – 图表对象

示例 5 – 场景

本页面有帮助吗?

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