【问题标题】:Calculate week number of the month, Sunday as Starting and Saturday as ending day Using MS SQL使用 MS SQL 计算月份的周数,星期日作为开始日,星期六作为结束日
【发布时间】:2016-05-26 10:35:51
【问题描述】:

我需要使用下面给出的 MS SQL 示例输入和输出来计算月份的周数

01/04/2016(Friday)  1 (1st week),
04/04/2016(Monday)  2 (2nd week), 
11/04/2016(Monday)  3 (3rd week) 

我需要这样的输出 将星期日视为一周的开始日期,将星期六视为一周的结束日期 我认为这个例子很清楚

谢谢

【问题讨论】:

  • MySQL 或 MS SQL Server - 它们具有不同的日期/时间函数。 (当时都不符合ANSI SQL...)
  • 而且一定是存储过程?
  • @jarlh 我正在使用 MS SQL

标签: sql sql-server date


【解决方案1】:

我不确定如何获得您正在寻找的输出——我只是不确定这意味着什么。但是,您可以使用DATEFIRST 设置一周的第一天。这适用于大部分函数,​​例如DATEPART

文档是here

【讨论】:

    【解决方案2】:

    对于 MySQL

    选择 (dayofmonth(current_date)-weekday(current_date))/7+1

    PostgreSQL

    select (extract(day from current_date)-extract(dow from current_date))/7 +1;

    只需将您的日期输入 current_date

    【讨论】:

    • ...还有sql-server,这个问题的依据是什么?
    • 当我发布答案时有 mysql ,只需更改 dayofmonth 和 weekday 函数
    猜你喜欢
    • 2022-12-11
    • 2016-06-16
    • 1970-01-01
    • 1970-01-01
    • 2023-03-28
    • 2017-07-24
    • 1970-01-01
    • 2020-07-02
    • 1970-01-01
    相关资源
    最近更新 更多