当前位置: 首页 > 面试题库 >

显示日期在哪个财政年度的哪个季度

葛子昂
2023-03-14
问题内容

我正在尝试构造一个查询,该查询将映射两列,一列是表中的日期,第二列是别名,以显示日期所属的季度和财务年度。

不幸的是,我没有足够的SQL知识来知道从哪里开始。我知道,我会用的组合做到这一点getdate(),并dateadd(MONTH,,)却没有,我已经把已接近工作。

更复杂的是,澳大利亚的财政年度从7月1日至6月30日开始,因此2012财政年度的第一季度将从2012年7月1日开始。

我可以不用声明就可以做到这一点,但是我宁愿在声明中使用它,因为它将在SSRS报告和C#应用程序中使用,这将使维护变得非常容易。


问题答案:

这应该工作:

SELECT
    MyDate,
    CASE
        WHEN MONTH(MyDate) BETWEEN 1  AND 3  THEN convert(char(4), YEAR(MyDate) - 1) + 'Q3'
        WHEN MONTH(MyDate) BETWEEN 4  AND 6  THEN convert(char(4), YEAR(MyDate) - 1) + 'Q4'
        WHEN MONTH(MyDate) BETWEEN 7  AND 9  THEN convert(char(4), YEAR(MyDate) - 0) + 'Q1'
        WHEN MONTH(MyDate) BETWEEN 10 AND 12 THEN convert(char(4), YEAR(MyDate) - 0) + 'Q2'
    END AS Quarter
FROM
    MyTable

输出:-

MyDate        Quarter
----------    --------
2011-01-01    "2010Q3"
2011-04-01    "2010Q4"
2011-07-01    "2011Q1"
2011-10-01    "2011Q2"


 类似资料:
  • 我需要获取当前季度的第一个日期作为java.util.Date对象,当前季度的最后一个日期作为java.util.Date对象。 例如,我找到了提供季度信息的方法 但前提是第一季度从1月份开始。 假设第一季度=8月、9月、10月 第二季度=11月、12月、1月 第三季度=2月、3月、4月 等等,有人能帮我得到第一个和最后一个日期吗。

  • 问题内容: 当然,我可以自己写这个,但是在我重新发明轮子之前,已经有一个已经做到这一点的功能了吗? 问题答案: 给定一个实例的datetime.date,会给你的四分之一(0第一季度,1第二季度,等等-加1,如果你需要从1计数,而不是;-)。 最初有两个答案,乘以赞成票,甚至最初被接受(目前都已删除),但存在很多问题-除法之前不进行除法,而是除以4而不是3。从1到12,可以很容易地检查一下自己的公

  • 有没有办法根据日期范围找出年份和季度? 我们考虑将11月作为财政年度的开始日期,将10月作为财政年度的结束日期。 前一年的11月到下一年的10月被认为是一个财政年度。 2014年11月1日-2015年10月31日- 10月31日之后的任何记录都将进入下一个财政年度。 我们还需要找到如下宿舍: 第1季度=11月、12月 - 但它被认为是第一季度。 --代码-- 函数getQuarter(){var

  • 问题内容: 给定2个日期(StartDate和EndDate),我该如何在Pl / SQL中生成季度周期。 例子: 预期产量: 问题答案: 参数规则,您可能需要调整查询以适合您的目的: 如果start_date不是确切的季度开始日期,则它有效地使用季度包含开始日期。 如果end_date不是确切的季度末,那么我们将在end_date之前的那个季度结束(而不是包含结束日期的那个季度)。

  • 问题内容: 我正在尝试查询历史数据,而我只需要返回1个月内的数据:返回2周和向前2周,但是我需要年份没关系。 因此,如果今天要进行查询,我希望所有行都位于xxxx-06-31和xxxx-07-27之间 在此先感谢您的帮助! 编辑:我尝试了两种方法。我相信这两种方法都不会在新的一年左右生效。一种是使用datepart(day),另一种是简单地将年份取为日期并进行比较。 问题答案: 解决此问题的最佳方

  • 有哪个开源的js时间插件支持,年,季度,月,周,日范围选择? 年: 季度: 月: 周: 日: