SqlServer常用函数及时间处理小结
作者:个人记录与分享 发布时间:2024-01-16 14:32:02
标签:SqlServer,常用函数,时间函数
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
来源:https://www.cnblogs.com/lwk9527/p/17374121.html


猜你喜欢
- 1、前言由于笔者并未系统地学习过Python,对Python某些底层的实现细节一概不清楚,以至于在实际使用的时候会写出一些奇奇怪怪的Bug(
- 首先声明,这里的权值共享指的不是CNN原理中的共享权值,而是如何在构建类似于Siamese Network这样的多分支网络,且分支结构相同时
- 全文检索引擎入门灰常不幸的是,关系型数据库对全文检索的支持没有被标准化。不同的数据库通过它们自己的方式来实现全文检索,而且SQL
- SQL Server 平台修改自增列值由于之前处理过sql server数据库的迁移工作,尝试过其自增列值的变更,但是通过SQL 语句修改自
- random是用于生成随机数的,我们可以利用它随机生成数字或者选择字符串。•random.seed(x)改变随机数生成器的种子seed。一般
- 本文模仿实现数据库访问的通用类,代码清晰,而且很实用,包括了对数据库的所有的常用的操作。 /// <summary>
- <script type="text/javascript"> </script>
- 一、使用jdbc连接数据库,插入数据库时,数据里的数据显示乱码,为 " ??? "两种解决方案:1、修改服务端的mysq
- 问题描述分析这是因为本地delve组件版本过低导致的,2019.2.1版本的Goland默认支持go 1.13查看F:\Go (GOPATH
- 本文实例为大家分享了python实现通讯录系统的具体代码,供大家参考,具体内容如下一、首先,给大家看一下这个系统的主菜单效果如下:二、步骤分
- 当用户的页面需要动态加载iframe 时, 如果iframe的src中包传中文参数会出现编码错误;必须加编码,然后再解码。 编码:encod
- 数据库索引是一个数据结构,提高操作的速度,在一个表中可以使用一个或多个列,提供两个快速随机查找和高效的顺序访问记录的基础创建索引。在创建索引
- 最近在使用linux上进行本地登录时,发现既然无法正常登录 , 报如下错误信息:[root@xxxx ~]# mysql -h localh
- 不少同学一提到泰勒公式,脑海里立马浮现高大上的定义和长长的公式,令人望而生畏。实际上,泰勒公式没有那么可怕,它是用简单的多项式来逼近一个光滑
- 问题说明(环境:windows7,MySql8.0)今天安装好MySql后启动MySql服务-->启动服务都失败的就不要往下看了,自行
- Flask 是一个 Python 实现的 Web 开发微框架。这篇文章是一个讲述如何用它实现传送视频数据流的详细教程。我敢肯定,现在你已经知
- 本文实例讲述了Python实现对一个函数应用多个装饰器的方法。分享给大家供大家参考,具体如下:下面的例子展示了对一个函数应用多个装饰器,可以
- 本文给大家介绍Python文件处理相关知识,具体内容如下所示:1.文件的常见操作文件是日常编程中常用的操作,通常用于存储数据或应用系统的参数
- 这篇文章主要介绍了python被修饰的函数消失问题解决(基于wraps函数),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的
- 输入:数字m mm,n nn输出:m mm行n nn列的数字蛇形方阵1. 从方阵最左上角开始,顺时针向内填充。初始化一个m mm行n nn列