【发布时间】:2020-05-16 21:17:03
【问题描述】:
我正在使用 Microsoft sql 服务器。我想根据给定的日期列创建一个自定义的季度列。此日期列表示该特定年份季度的第一天。困难在于我的日期栏的时间跨度为 3 年。每年都有不同的季度开始日期。下面是我的日期列的示例。非常感谢!
Date
2011-02-28 00:00:00:000 ---first date of q1 in 2011
2011-05-31 00:00:00:000 ---first date of q2 in 2011
2011-08-31 00:00:00:000 ---first date of q3 in 2011
2011-12-01 00:00:00:000 ---first date of q4 in 2011
2012-02-29 00:00:00:000 ---first date of q1 in 2012
2012-05-30 00:00:00:000 ---first date of q2 in 2012
2012-08-30 00:00:00:000 ---first date of q3 in 2012
2012-11-30 00:00:00:000 ---first date of q4 in 2012
2013-02-28 00:00:00:000 ---first date of q1 in 2013
2013-05-30 00:00:00:000 ---first date of q2 in 2013
2013-08-30 00:00:00:000 ---first date of q3 in 2013
2013-11-30 00:00:00:000 ---first date of q4 in 2013
预期的结果是:
Date QuarterColumn
2011-02-28 00:00:00:000 q1
2011-05-31 00:00:00:000 q2
2011-08-31 00:00:00:000 q3
2011-12-01 00:00:00:000 q4
2012-02-29 00:00:00:000 q1
2012-05-30 00:00:00:000 q2
2012-08-30 00:00:00:000 q3
2012-11-30 00:00:00:000 q4
2013-02-28 00:00:00:000 q1
2013-05-30 00:00:00:000 q2
2013-08-30 00:00:00:000 q3
2013-11-30 00:00:00:000 q4
【问题讨论】:
-
您的预期结果是什么?
-
MySQL 还是 SQL Server?
-
嗯 - 2011Q1 的第一天是二月的最后一天?虽然我不认为有任何关于财政年度的法律规定(让我们准确了解您所说的日历的含义),但我从未见过任何一个月的最后一天开始的季度。
-
sql 服务器。就预期结果而言,请参阅我的更新。谢谢
-
是的,这是我的数据和季度要求。需要忘记日历/通用季度规则。
标签: sql sql-server date datetime