SqlServer常用函数及时间处理小结


Posted in SQL Server onMay 08, 2023

YEAR() 函数返回一个整数值,它表示指定日期的年份,一般使用为:Year(时间),如:

YEAR('2023-03-14 16:50:08.543')--2023

REPLACE() 字符串替换函数,一般使用为:REPLACE(被搜索字符串,需要替换的字符串,替换值),如:

REPLACE('测试添加的','的','测试数据')--测试添加测试数据

STUFF() 函数用于删除指定长度的字符,并可以在指定的起点处插入另一组字符,一般使用为:STUFF(字符串,从1开始计算字符开始位置,要删除的字符数,要重新插入的字符串),如:

STUFF('测试添加的',3,2,'修改')--测试修改的

DATEADD() 函数将数字值添加到输入日期的指定日期部分,并返回修改后的值,一般使用为:DATEADD(需要对时间的什么部分操作,时间,间隔数–过去为负数未来为正数),如:

DATEADD(Year, -7,GETDATE())`--2016-03-14 16:48:01.317

DATEDIFF() 函数返回两个日期之间的差值。一般使用为:DATEDIFF(需要时间差距部分,开始时间,结束时间),如:

DATEDIFF(MS,'2023-03-14 16:45:08.543','2023-03-14 16:50:08.543') --300000 (毫秒)
DATEDIFF(SS,'2023-03-14 16:45:08.543','2023-03-14 16:50:08.543') --300 (秒)
DATEDIFF(MI,'2023-03-14 16:45:08.543','2023-03-14 16:50:08.543') -- 5 (分钟)
DATEDIFF(HOUR,'2023-03-14 12:50:08.543','2023-03-14 16:50:08.543') -- 4 (小时)
DATEDIFF(DAY,'2023-03-01 16:50:08.543','2023-03-14 16:50:08.543')--13 (天)
DATEDIFF(WEEK,'2023-03-01 16:50:08.543','2023-03-14 16:50:08.543')--2 (周)
DATEDIFF(MONTH,'2023-02-01 16:50:08.543','2023-03-14 16:50:08.543') --1 (月)
DATEDIFF(QUARTER,'2023-01-01 16:50:08.543','2023-04-14 16:50:08.543') -- 1 (季度)
DATEDIFF(YEAR,'2022-02-01 16:50:08.543','2023-03-14 16:50:08.543')-- 1 (年)

比较常用的一些Sql时间相关查询

--获取当前时间的月日部分,并处理为【月/日】格式
Select STUFF(REPLACE(CONVERT(VARCHAR(10),GETDATE(),111),YEAR(GETDATE()),''),1,1,'') --03/14
--获取当前时间的前7天,如需获取前后几天则针对【-7】这个值进行修改
Select DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()), -7)--2023-03-07 00:00:00.000
--获取本月最后一天日期
Select CONVERT(VARCHAR(10),DATEADD(MONTH,DATEDIFF(MONTH, -1, GETDATE()), -1),23)--2023-03-31
--获取上月最后一天日期
Select CONVERT(VARCHAR(10),DATEADD(MONTH,DATEDIFF(MONTH, 0, GETDATE()), -1),23)--2023-02-28
 --本年第一天
Select DATEADD(YEAR,DATEDIFF(YEAR,0,GETDATE()),0)--2023-01-01 00:00:00.000
--本年最后一天
Select  DATEADD(YEAR,DATEDIFF(YEAR,0,DATEADD(YEAR,1,GETDATE())),-1)--2023-12-31 00:00:00.000
--下年第一天
Select  DATEADD(YEAR,DATEDIFF(YEAR,0,DATEADD(YEAR,1,GETDATE())),0)--2024-01-01 00:00:00.000
--下年最后一天
Select  DATEADD(YEAR,DATEDIFF(YEAR,0,DATEADD(YEAR,2,GETDATE())),-1)--2024-12-31 00:00:00.000
--上年第一天
Select DATEADD(YEAR,DATEDIFF(YEAR,0,DATEADD(YEAR,-1,GETDATE())),0)--2022-01-01 00:00:00.000
--上年最后一天
Select DATEADD(YEAR,DATEDIFF(YEAR,0,GETDATE()),-1)--2022-12-31 00:00:00.000

Sql CONVERT日期格式转换

SELECT CONVERT(varchar(100), GETDATE(), 0) --03 14 2023  5:06PM
SELECT CONVERT(varchar(100), GETDATE(), 1) --03/14/23
SELECT CONVERT(varchar(100), GETDATE(), 2) --23.03.14
SELECT CONVERT(varchar(100), GETDATE(), 3) --14/03/23
SELECT CONVERT(varchar(100), GETDATE(), 4) --14.03.23
SELECT CONVERT(varchar(100), GETDATE(), 5) --14-03-23
SELECT CONVERT(varchar(100), GETDATE(), 6) --14 03 23
SELECT CONVERT(varchar(100), GETDATE(), 7) --03 14, 23
SELECT CONVERT(varchar(100), GETDATE(), 8) --17:07:16
SELECT CONVERT(varchar(100), GETDATE(), 9) --03 14 2023  5:07:16:800PM
SELECT CONVERT(varchar(100), GETDATE(), 10) --03-14-23
SELECT CONVERT(varchar(100), GETDATE(), 11) --23/03/14
SELECT CONVERT(varchar(100), GETDATE(), 12) --230314
SELECT CONVERT(varchar(100), GETDATE(), 13) --14 03 2023 17:07:29:713
SELECT CONVERT(varchar(100), GETDATE(), 14) --17:07:43:390
SELECT CONVERT(varchar(100), GETDATE(), 20) --2023-03-14 17:07:43
SELECT CONVERT(varchar(100), GETDATE(), 21) --2023-03-14 17:07:43.390
SELECT CONVERT(varchar(100), GETDATE(), 22) --03/14/23  5:07:56 PM
SELECT CONVERT(varchar(100), GETDATE(), 23) --2023-03-14
SELECT CONVERT(varchar(100), GETDATE(), 24) --17:07:56
SELECT CONVERT(varchar(100), GETDATE(), 25) -- 2023-03-14 17:06:11.847
SELECT CONVERT(varchar(100), GETDATE(), 100) --03 14 2023  5:06PM
SELECT CONVERT(varchar(100), GETDATE(), 101) --03/14/2023
SELECT CONVERT(varchar(100), GETDATE(), 102) --2023.03.14
SELECT CONVERT(varchar(100), GETDATE(), 103) --14/03/2023
SELECT CONVERT(varchar(100), GETDATE(), 104) --14.03.2023
SELECT CONVERT(varchar(100), GETDATE(), 105) --14-03-2023
SELECT CONVERT(varchar(100), GETDATE(), 106) --14 03 2023
SELECT CONVERT(varchar(100), GETDATE(), 107) --03 14, 2023
SELECT CONVERT(varchar(100), GETDATE(), 108) --17:08:31
SELECT CONVERT(varchar(100), GETDATE(), 109) --03 14 2023  5:08:43:493PM
SELECT CONVERT(varchar(100), GETDATE(), 110) --03-14-2023
SELECT CONVERT(varchar(100), GETDATE(), 111) --2023/03/14
SELECT CONVERT(varchar(100), GETDATE(), 112) --20230314
SELECT CONVERT(varchar(100), GETDATE(), 113) --14 03 2023 17:08:57:650
SELECT CONVERT(varchar(100), GETDATE(), 114) --17:08:57:650
SELECT CONVERT(varchar(100), GETDATE(), 120) --2023-03-14 17:09:09
SELECT CONVERT(varchar(100), GETDATE(), 121) --2023-03-14 17:09:09.177

到此这篇关于SqlServer常用函数及时间处理小结的文章就介绍到这了,更多相关SqlServer常用函数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

SQL Server 相关文章推荐
SQL Server——索引+基于单表的数据插入与简单查询【1】
Apr 05 SQL Server
Sql-Server数据库单表查询 4.3实验课
Apr 05 SQL Server
SQL SERVER中常用日期函数的具体使用
Apr 08 SQL Server
SQL Server中交叉联接的用法详解
Apr 22 SQL Server
SQL 窗口函数实现高效分页查询的案例分析
May 21 SQL Server
SQL Server作业失败:无法确定所有者是否有服务器访问权限的解决方法
Jun 30 SQL Server
万能密码的SQL注入漏洞其PHP环境搭建及防御手段
Sep 04 SQL Server
SQLServer RANK() 排名函数的使用
Mar 23 SQL Server
SQL Server的存储过程与触发器以及系统函数和自定义函数
Apr 10 SQL Server
使用 MybatisPlus 连接 SqlServer 数据库解决 OFFSET 分页问题
Apr 22 SQL Server
SQL Server携程核心系统无感迁移到MySQL实战
Jun 01 SQL Server
SqlServer常用函数及时间处理小结
May 08 SQL Server
详解SQL报错盲注
Jul 23 #SQL Server
SQL bool盲注和时间盲注详解
Jul 23 #SQL Server
在SQL Server中使用 Try Catch 处理异常的示例详解
Jul 15 #SQL Server
SQL中的连接查询详解
Jun 21 #SQL Server
SQL Server数据库备份和恢复数据库的全过程
一次SQL查询优化原理分析(900W+数据从17s到300ms)
Jun 10 #SQL Server
SQL Server2019安装的详细步骤实战记录(亲测可用)
You might like
用PHP编程语言开发动态WAP页面
2006/10/09 PHP
使用php测试硬盘写入速度示例
2014/01/27 PHP
php的laravel框架快速集成微信登录的方法
2016/12/12 PHP
PHP如何通过date() 函数格式化显示时间
2020/11/13 PHP
javascript call方法使用说明
2010/01/11 Javascript
javascript中获取下个月一号,是星期几
2012/06/01 Javascript
struts2+jquery+json实现异步加载数据(自写)
2013/06/24 Javascript
javascript实现获取浏览器版本、浏览器类型
2015/12/02 Javascript
Node.js文件操作方法汇总
2016/03/22 Javascript
轻松掌握JavaScript代理模式
2016/08/26 Javascript
AngularJS使用ng-Cloak阻止初始化闪烁问题的方法
2016/11/03 Javascript
javascript基础知识讲解
2017/01/11 Javascript
vue.js+Element实现表格里的增删改查
2017/01/18 Javascript
node.js学习之事件模块Events的使用示例
2017/09/28 Javascript
Node.js使用Express.Router的方法
2017/11/14 Javascript
vue element-ui table表格滚动加载方法
2018/03/02 Javascript
Vue 项目中遇到的跨域问题及解决方法(后台php)
2018/03/28 Javascript
vue2.0 实现导航守卫(路由守卫)
2018/05/21 Javascript
一个小时快速搭建微信小程序的方法步骤
2019/04/15 Javascript
VUE写一个简单的表格实例
2019/08/06 Javascript
js实现左右轮播图
2020/01/09 Javascript
[01:10:24]DOTA2-DPC中国联赛 正赛 VG vs Aster BO3 第一场 2月28日
2021/03/11 DOTA
Python中bisect的用法
2014/09/23 Python
Python单元测试框架unittest简明使用实例
2015/04/13 Python
Python实现自动添加脚本头信息的示例代码
2016/09/02 Python
python实现各进制转换的总结大全
2017/06/18 Python
对python使用http、https代理的实例讲解
2018/05/07 Python
对python xlrd读取datetime类型数据的方法详解
2018/12/26 Python
python中pytest收集用例规则与运行指定用例详解
2019/06/27 Python
OpenCV3.0+Python3.6实现特定颜色的物体追踪
2019/07/23 Python
python二维键值数组生成转json的例子
2019/12/06 Python
Python利用命名空间解析XML文档
2020/08/10 Python
利用CSS3实现动态的二级三级菜单效果实例源码
2017/01/04 HTML / CSS
.TTL是什么?有什么用处,通常那些工具会用到它?(ping? traceroute? ifconfig? netstat?)
2016/05/09 面试题
怀念母亲教学反思
2014/04/28 职场文书
市级三好学生事迹材料
2014/08/27 职场文书