【问题标题】:Calculate the week number based on the specific start and end months, not the default SQL Server start month根据具体的开始和结束月份计算周数,而不是默认的 SQL Server 开始月份
【发布时间】:2012-08-02 12:24:41
【问题描述】:

众所周知,在 SQL Server 中,它根据当年的 1 月 1 日到当年的 12 月 31 日计算周数。

现在我想要的是,我想将这些 1 月 1 日和 12 月 31 日更改为 3 月 1 日和 11 月 30 日。基于这些 SQL Server 应该计算周数。

那么谁能给我这个 SQL 脚本?

【问题讨论】:

  • 你会在 12 月到 2 月之间有日期吗?

标签: sql sql-server sql-server-2008


【解决方案1】:

虽然您可以使用 dateadd 和 datepart 创建非常复杂的表达式,但我建议创建 calendar table 更简单。它可能有一列代表您的自定义周数,您可以在整个日期范围内精确计算一次,然后它始终在您的查询中可用,并且更容易排除故障。

【讨论】:

    【解决方案2】:

    我猜你的问题来自posted earlier today关于财政年度周数的问题。

    我在the sqlTeam website 上找到了这个链接,可能有点旧,但它很好地解释了所涉及的问题。在搜索和阅读更多内容后,我得出结论,最好的方法是像@AaronBertrand 建议的那样涉及日历表

    【讨论】:

      猜你喜欢
      • 2020-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多