从财政年度中提取季度为真或假

Posted

技术标签:

【中文标题】从财政年度中提取季度为真或假【英文标题】:Extract Quarter from financial year as true or false 【发布时间】:2020-07-01 02:44:01 【问题描述】:

我有两张桌子。我需要将 Quarter 提取为真或假。财政年度从 10 月开始。所以 Q1=Oct-Dec, Q2= Jan-Mar, Q3=Apr-Jun, Q4= Jul-Sept。我还需要确定它是前一周的真假。一周从星期日开始。这是一个被认为是 Q1= Jan-Mar 等的查询,但我需要考虑 Q1= Oct-Dec 等等。

选择(案例 WHEN (CAST(REPLACE(UPPER("FY20"), "FY", "") AS INT64) + 2000 = EXTRACT(从当前日期开始的年份)) AND (CAST(REPLACE(UPPER("Q2"), "Q", "") AS INT64) = EXTRACT(QUARTER FROM CURRENT_DATE)) THEN true 别的 错误的 结尾 ) 作为 FYQuarterToDate,

请参阅输入和输出表。

【问题讨论】:

【参考方案1】:

但我需要考虑 Q1= Oct-Dec 等等...

您只需将日期更改为 3 个月即可获得正确的季度编号,如下例所示

FORMAT('Q%i', EXTRACT(QUARTER FROM DATE_ADD(CURRENT_DATE, INTERVAL 3 MONTH)))   

根据以下规则为您提供 QN - Q1=Oct-Dec, Q2= Jan-Mar, Q3=Apr-Jun, Q4= Jul-Sept

【讨论】:

@Mikhali,感谢您的帮助。所以我需要更改本季度的代码。另外,我怎样才能找到当前的一周,前一周。 我认为您应该将EXTRACT(QUARTER FROM CURRENT_DATE) 替换为EXTRACT(QUARTER FROM DATE_ADD(CURRENT_DATE, INTERVAL 3 MONTH))。截至本周 - 您的问题没有任何详细信息,而且我们通常希望一次提出一个问题 - 所以我建议您发布有关一周的新问题:o) @Mikhali,感谢您的帮助。它现在工作正常。我会为这周再创建一个。【参考方案2】:

另一种性能稍微好一点的方法是

MOD(EXTRACT(QUARTER FROM CURRENT_DATE), 4) + 1

这是因为MOD+1 的执行速度比DATE_ADD(INTERVAL MONTH) 快​​

【讨论】:

感谢您分享您的想法。这个查询给了我 4,这意味着它是 Q4。根据我的问题,本月是第四季度。

以上是关于从财政年度中提取季度为真或假的主要内容,如果未能解决你的问题,请参考以下文章

根据年、月、季度提取数据[关闭]

在 Python Pandas 中将带有元素日期标签的年度财政数据元组转换为时间序列

如何检索动态框值(如果选中,则为真或假) - Angular 6

从 0 到 20 的随机数生成器,用户输入一个可以为真或假的数字

将报告拆分为一个会计年度的季度

如何让 NSJSONSerialization 将布尔值输出为真或假?