首页 > 数据库 >SQLserver获取本周、本月、本季、本年、第一天、最后一天

SQLserver获取本周、本月、本季、本年、第一天、最后一天

时间:2024-01-17 19:22:54浏览次数:36  
标签:本季 第一天 -- datediff SQLserver dateadd year select getdate

注:本周第一天为周一、最后一天为周日(七)

--本周第一天
select dateadd(WEEK, datediff(WEEK, 0, getdate()), 0);
--本周最后一天
select dateadd(WEEK, datediff(WEEK, 0, getdate()), 6);
--上周第一天
select dateadd(WEEK, datediff(WEEK, 0, getdate())-1, 0);
--上周最后一天
select dateadd(WEEK, datediff(WEEK, 0, getdate())-1, 6);

--本月第一天
select dateadd(month, datediff(month, 0, getdate()), 0);
--本月最后一天
select dateadd(month, datediff(month, -1, getdate()), -1);
--上月第一天
select DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE())-1, 0)
--上月最后一天
select DATEADD(MONTH, DATEDIFF(MONTH, -1, GETDATE())-1, -1)

--本季第一天
select dateadd(QUARTER , datediff(QUARTER ,0, getdate()), 0);
--本季最后一天
select dateadd(QUARTER , datediff(QUARTER , -1, getdate()), -1);
--上季第一天
select dateadd(QUARTER , datediff(QUARTER ,0, getdate())-1, 0);
--上季最后一天
select dateadd(QUARTER , datediff(QUARTER , -1, getdate())-1, -1);

--本年第一天
select dateadd(year, datediff(year, 0, getdate()), 0);
--本年最后一天
select dateadd(year, datediff(year, -1, getdate()), -1);
--上年第一天
select dateadd(year, datediff(year, 0, getdate()), 0);
--上年最后一天
select dateadd(year, datediff(year, 0, getdate()), -1);

原文链接:https://blog.csdn.net/okakio/article/details/112462682

标签:本季,第一天,--,datediff,SQLserver,dateadd,year,select,getdate
From: https://www.cnblogs.com/xygsj/p/17970848

相关文章

  • 记录一次SQLServer复制监控器(replication monitor)复制延迟数值为NULL的异常处理
     现象在SQLServer复制(订阅发布),在正常运行的情况下,发布节点一直有写入,订阅节点也正常复制到了这些数据,但分发节点的复制监控器面板(replicationmonitor)无法看到部分发布对象的延迟信息。如下,经过重启SQLServer服务,重启SQLServerAgent服务,重启操作系统等尝试后,均无效,依旧显示不......
  • SQLSERVER - 性能优化
    行存储和列存储行存储场景:数据维护,数据检索列存储场景:数据分析索引的了解聚集索引聚集索引中,叶节点包含基础表的数据页。数据链内的页和行将按聚集索引键值进行排序。主键通常是聚集索引,但可以不是聚集索引。非聚集索引基础表的数据行不会根据其非聚集键......
  • sqlserver查询最近失败的任务
    selectjob_id,step_name,message,cast((cast(LEFT(run_date,4)ASVARCHAR)+'-'+SUBSTRING(cast(run_dateASVARCHAR),5,2)+'-'+cast(RIGHT(run_date,2)ASVARCHAR))+'......
  • PHP学习第一天:初识与基础
    今天,我开始了PHP的学习之旅。PHP是一种常用的服务器端脚本语言,广泛应用于Web开发。早上,我首先了解了PHP的基本语法和结构。我学习了如何编写一个简单的PHP脚本,包括开头和结束的标记,以及如何在HTML中嵌入PHP代码。通过编写一个简单的“Hello,World!”程序,我成功地在浏览器中输出了......
  • Python第一天学习笔记
    今日学习内容1.什么是编程2.计算机组成原理3.计算机操作系统4.编程语言是什么什么是编程什么是编程语言编程语言是什么:人与计算机交流的介质什么是编程编程:利用编程语言写出一个个文件,这堆文件会达到一个目的编程有什么用就像近代奴隶主奴役黑奴干活一样,我们的目的是奴......
  • 学Windows批处理第一天:使用批处理命令生成一个文件并写入内容
    脚本功能:1、生成一个文件,文件名格式为:yyyymmddhhmmss2、文件中写入一段文本操作步骤:1、新建一个文本文档(txt格式)2、修改文件名为任意名称(我的叫create_file),修改文件类型为.bat3、使用记事本或notepad打开文件,将以下内容粘贴进去:::防止中文乱码chcp65001@echoofftitle......
  • [代码随想录] 第一天
    704.二分查找[https://leetcode.cn/problems/binary-search/description/]思路:二分查找适用于在有序数组中查找目标值,左边边界为left,右边边界为right,每次使用middle=(right+left)/2,将原数组划分为[left,middle]和[middle,right]两个数组,若middle<target,则目标值落在右边数组,否......
  • sqlserver 查询结果赋值到Excel会出现换行
    SELECTREPLACE(MaterialCode,CHAR(13)+CHAR(10),''),REPLACE(MaterialCode,CHAR(13),''),REPLACE(MaterialCode,CHAR(10),'')FROM#MeetingPlan2023whereisnull(MaterialCode,'')!=''andID=22264 SELECTREP......
  • Exchange学习第一天:初识与安装
    Exchange,作为微软的企业级邮件服务器软件,在企业中扮演着至关重要的角色。今天,我开始了Exchange的学习之旅。一早,我首先了解了Exchange的基本概念和功能。Exchange不仅仅是一个邮件服务器,它还提供了联系人、日历、任务等协作工具,帮助企业提高工作效率。随后,我熟悉了Exchange的安装环......
  • MySQL8.0 PG数据库 SQLServer Oracle数据库 数据库忘记密码 处理方法
    MySQL8.0分为rpm方式和tar.gz安装方式不同而不同需要修改/etc/my.conf配置文件.注意如果是rpm包的话就在这个路径下面修改增加内容skip-grant-tables注意修改完需要重启数据库rpm包安装的方式重启方法为:systemctlrestartmysqld然后可以无密码登录数据mysql-uro......