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

当月的第一个工作日-SQL Server

羊舌承颜
2023-03-14
问题内容

如何获得当月的第一个工作日?如果不创建函数,则仅选择。像这样的东西:

SELECT CONVERT(VARCHAR(25),DATEADD(dd,-(DAY(GETDATE())-1), GETDATE()), 101)

有人知道吗?

谢谢。


问题答案:

一个简单的案例陈述就可以做到

SELECT CASE 
        WHEN DATENAME(WEEKDAY, dateadd(mm, DATEDIFF(MM, 0, getdate()), 0)) = 'Saturday'
            THEN dateadd(mm, DATEDIFF(MM, 0, getdate()), 0) + 2
        WHEN DATENAME(WEEKDAY, dateadd(mm, DATEDIFF(MM, 0, getdate()), 0)) = 'Sunday'
            THEN dateadd(mm, DATEDIFF(MM, 0, getdate()), 0) + 1
        ELSE dateadd(mm, DATEDIFF(MM, 0, getdate()), 0)
        END


 类似资料:
  • 问题内容: 我正在尝试往返日期,该日期将有以前的日期,并且将有本月的第一个日期。一月份将会如此,依此类推。如何正确获取当月的第一个日期?我做不到。 问题答案: 尝试 更新(自Java 8以来 ):

  • 上面的问题是假设一周有7天。它试图计算每周有7天。我的数据是由(工作日)每日价格组成的,有时可能会因为市场因假期关闭而错过一周的几天。 我的问题是如何找到给定日期的一个月中的一周。注:我突出了“给定日期”,因为这个过程每天都在处理,所以任何展望到月底的答案都可能不起作用。 我的尝试是向前看,但不是最佳的: 如果你发现这个问题有任何问题,或者它是重复的,请告诉我。我已经寻找了一段时间的解决办法。

  • 当我运行上面的查询以从当前日期获取上个月的第一天和最后一天时,我得到了一个如下所述的错误。 错误:Amazon无效操作:函数pg_catalog.date_diff(“未知”,整数,不带时区的时间戳)不存在;[SQL State=42883,DB ErrorCode=500310] 请帮我解决这个问题。

  • setCurrentSheetIsFirst(): self 实例 $config = ['path' => './tests']; $excel = new \Vtiful\Kernel\Excel($config); ​ $excel->fileName('hide.xlsx', 'sheet1') // 初始化文件,同时初始化第一张工作表 sheet1 ->header(['sh

  • 问题内容: 我有一个在工作日(周一至周五)运行的sis软件包。如果我在星期二(background(DB))收到文件,则它需要前一个工作日的日期并进行一些交易。如果我在星期五运行工作,则必须获取星期一日期并处理交易。 我已使用以下查询获取之前的营业日期 如果我执行此查询,我将获得昨天的Transactios的结果。如果我在星期一运行相同的查询,则必须获取星期五的交易而不是星期日。 问题答案: 我更

  • 我想根据月份对值进行分类,以便第一次过滤这些值 例如:-