Sql Server中的日期与时间函数
1. 当前系统日期、时间
select getdate()
2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值
例如:向日期加上2天
select dateadd(day,2,'2004-10-15') --返回:2004-10-17 00:00:00.000
3. datediff 返回跨两个指定日期的日期和时间边界数。
select datediff(day,'2004-09-01','2004-09-18') --返回:17
4. datepart 返回代表指定日期的指定日期部分的整数。
select DATEPART(month, '2004-10-15') --返回 10
5. datename 返回代表指定日期的指定日期部分的字符串
select datename(weekday, '2004-10-15') --返回:星期五
6. day(), month(),year() --可以与datepart对照一下
select 当前日期=convert(varchar(10),getdate(),120) ,当前时间=convert(varchar(8),getdate(),114) select datename(dw,'2004-10-15') select 本年第多少周=datename(week,'2004-10-15') ,今天是周几=datename(weekday,'2004-10-15')
7.当前月的第一天 00:00:00,下一月的第一天的 00:00:00
select dateadd(hh,0,DATEADD(mm, DATEDIFF(m,0,getdate()), 0)) 2013-07-01 00:00:00.000 select dateadd(hh,0,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0)) 2013-08-01 00:00:00.000
8.当日的零点 次日零点
select dateadd(hh,0,DATEADD(DAY, DATEDIFF(DAY,0,getdate()), 0)) 2013-07-30 00:00:00.000 select dateadd(hh,0,DATEADD(DAY, DATEDIFF(DAY,0,getdate())+1, 0)) 2013-07-31 00:00:00.000
9.今天的午夜时间,次日午夜时间
select CAST(convert(CHAR(8),getdate(),112) as datetime) 2013-07-30 00:00:00.000 select CAST(convert(CHAR(8),dateadd(DAY,1,getdate()),112) as datetime) 2013-07-31 00:00:00.000
二、日期格式转换
select CONVERT(varchar, getdate(), 120 ) 2004-09-12 11:06:08 select CONVERT(varchar(10), getdate(), 120 ) 2004-09-12 select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','') 20040912110608 select CONVERT(varchar(12) , getdate(), 111 ) 2004/09/12 select CONVERT(varchar(12) , getdate(), 112 ) 20040912 select CONVERT(varchar(12) , getdate(), 102 ) 2004.09.12
其它不常用的日期格式转换方法:
select CONVERT(varchar(12) , getdate(), 101 ) 09/12/2004 select CONVERT(varchar(12) , getdate(), 103 ) 12/09/2004 select CONVERT(varchar(12) , getdate(), 104 ) 12.09.2004 select CONVERT(varchar(12) , getdate(), 105 ) 12-09-2004 select CONVERT(varchar(12) , getdate(), 106 ) 12 09 2004 select CONVERT(varchar(12) , getdate(), 107 ) 09 12, 2004 select CONVERT(varchar(12) , getdate(), 108 ) 11:06:08 select CONVERT(varchar(12) , getdate(), 109 ) 09 12 2004 1 select CONVERT(varchar(12) , getdate(), 110 ) 09-12-2004 select CONVERT(varchar(12) , getdate(), 113 ) 12 09 2004 1 select CONVERT(varchar(12) , getdate(), 114 ) 11:06:08.177
举例:
1.GetDate() 用于sql server :select GetDate() 2.DateDiff('s','2005-07-20','2005-7-25 22:56:32')返回值为 514592 秒 DateDiff('d','2005-07-20','2005-7-25 22:56:32')返回值为 5 天 3.DatePart('w','2005-7-25 22:56:32')返回值为 2 即星期一(周日为1,周六为7) DatePart('d','2005-7-25 22:56:32')返回值为 25即25号 DatePart('y','2005-7-25 22:56:32')返回值为 206即这一年中第206天 DatePart('yyyy','2005-7-25 22:56:32')返回值为 2005即2005年
附图
参数 interval的设定值如下:
相关推荐
时间函数,sqlserver,标签系统标签系统标签系统标签系统
sql server 时间函数大全,很全,希望大家喜欢
Sql Server时间函数实用大全,欢迎下载!
SQLSERVER时间函数汇总,非常详细的内容
SQL Server时间函数详解 自我整理出来的,有例子和解释
整理SQL Server系统函数,包含聚合函数、配置函数、日期时间函数、数学函数、字符串等等。简单介绍各函数的使用方法(例子)及函数功能
SQLServer时间日期函数详解,是比较详细的SQLServer时间日期函数详解
set @SourceSql=stuff(@SourceSql,1,charindex(',',@SourceSql,1),'') end return end select * from dbo.f_splitstr('1,2,3,4',',') --全角和半角转换函数 Create FUNCTION f_Convert( @str ...
提供SQLSERVER常用的时间日期函数。 比如:getdate()、dateadd()、datediff(),还带有示例讲解,希望对各位有帮助!
收集整理的SQL Server自定义函数,原文地址:http://blog.csdn.net/maco_wang 1.去除字符串中的html标记及标记中的内容 2 2. 去除字符串中连续的分割符 4 3.求第一个字符串中第二个串的个数 6 4.综合模糊查询 6 5....
主要包括sqlserver中的一此函数的使用方法,及一些例子,有时间函数,字符串函数等等
日期和时间函数 3 日期部分 4 数学函数 5 数据类型转换函数 7 日期类型数据转换为字符数据类型的日期格式的部分样式表 7 系统函数 10 排名函数 10 聚合函数 11
SQL Server 函数大全,包括字符串、日期、时间等,绝对全部
SqlServer日期时间函数,非常全 1、常用日期方法(下面的GetDate() = '2006-11-08 13:37:56.233') (1)DATENAME ( datepart ,date ) 返回表示指定日期的指定日期部分的字符串。Datepart详见下面的列表. SELECT ...
SqlServer时间日期处理函数及字符串转换 SqlServer时间日期处理函数及字符串转换 文章分类:数据库 最近做的报表,用SqlServer2005,边做边学吧,虽然速度有些慢~
MS SQL Server中文版的预设日期datetime格式是yyyy-mm-dd hh:mm:ss.mmm 长短日期格式 代码如下: –短日期格式:yyyy-m-d SELECT REPLACE(CONVERT(varchar(10),getdate(),120),N’-0′,’-‘) –长日期格式:yyyy年mm...
sqlserver获取当前时间并只需要年月日小时,使用GETDATE和convert函数达到目的
非常详细地说明了在Sqlserver中如何使用各类日期函数