SQL SERVER中常用日期函数的具体使用
程序员文章站
2022-03-17 18:07:23
1 getdate() 返回当前系统日期select getdate()2 dateadd(日期部分,常数,日期) 返回将日期的指定日期部分加常数后的结果返回常数为正select dateadd(yy...
1 getdate() 返回当前系统日期
select getdate()
2 dateadd(日期部分,常数,日期) 返回将日期的指定日期部分加常数后的结果返回
常数为正
select dateadd(yy,1,getdate())
等同于
select dateadd(year,1,getdate())
常数为负数
select dateadd(yy,-2,getdate())
常数为小数(直接舍去小数部分)
select dateadd(yy,2.4,getdate()) select dateadd(yy,2.5,getdate()) select dateadd(yy,2.6,getdate())
3 datediff( 日期部分,日期1,日期2) 返回两个日期之间的差值,日期部分(日期1-日期2)
日期1>日期2
select datediff(yy,‘2008/1/1',getdate())
日期1<日期2
select datediff(yy,getdate(),‘2008/1/1')
4 datename() 返回指定日期的日期部分的字符串(返回字符串)
select datename(yy,getdate())
'+'是连接符号
select datename(yy,getdate())+datename(qq,getdate()) --qq 是quatrer代表季度
5 datepart() 返回指定日期的日期部分的整数(返回整数)
select datepart(yy,getdate())
'+'是加符号
select datepart(yy,getdate())+datepart(qq,getdate())
6 day() 返回指定日期的日部分的整数
select day(getdate())
7 month() 返回指定日期的月部分的整数
select month(getdate())
8 year() 返回指定日期的年部分的整数
select year (getdate())
补充:
时间转换:
select convert(varchar(12),getdate(),101) 07/16/2010 select convert(varchar(12),getdate(),102) 2010.07.16 select convert(varchar(12),getdate(),103) 16/07/2010 select convert(varchar(12),getdate(),104) 16.07.2010 select convert(varchar(12),getdate(),105) 16-07-2010 select convert(varchar(12),getdate(),106) 16 jul 2010 select convert(varchar(12),getdate(),107) jul 16, 2010 select convert(varchar(12),getdate(),108) 11:58:49 select convert(varchar(12),getdate(),109) jul 16 2010 select convert(varchar(12),getdate(),110) 07-16-2010 select convert(varchar(12),getdate(),111) 2010/07/16 select convert(varchar(12),getdate(),112) 20100716 select convert(varchar(12),getdate(),113) 16 jul 2010 select convert(varchar(12),getdate(),114) 11:59:35:930
当月第一天
select dateadd(mm,datediff(mm,0,getdate()),0)
本周星期一
select dateadd(wk,datediff(wk,0,getdate()),0)
本年第一天
select dateadd(yyyy,datediff(yyyy,0,getdate()),0)
--本月最后1天
select dateadd(ms,-3,dateadd(mm,datediff(mm,0,getdate())+1,0))
--本周最后一天,注意sql精确到3毫秒。。。
select dateadd(ms,-3,dateadd(wk,datediff(wk,0,getdate())+1,0));
本月的第一个星期一
select dateadd(wk,datediff(wk,0,dateadd(dd,6-datepart(day,getdate()),getdate())),0);
到此这篇关于sql server中常用日期函数的具体使用的文章就介绍到这了,更多相关sql server常用日期函数内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
推荐阅读
-
ms sql server中实现的unix时间戳函数(含生成和格式化,可以和mysql兼容)
-
SQL SERVER使用REPLACE将某一列字段中的某个值替换为其他的值
-
Sql Server中常用的6个自定义函数分享
-
SQL Server中调用C#类中的方法实例(使用.NET程序集)
-
SQL Server中通配符的使用示例
-
SQL Server 2000中的触发器使用
-
SQL Server遍历表中记录的2种方法(使用表变量和游标)
-
SQL Server 日期函数CAST 和 CONVERT 以及在业务中的使用介绍
-
SQL中的ISNULL函数使用介绍
-
基于SQL Server中char,nchar,varchar,nvarchar的使用区别