设为首页 收藏本站
查看: 504|回复: 0

[经验分享] Sql server中时间函数用法详解

[复制链接]

尚未签到

发表于 2015-6-29 14:29:12 | 显示全部楼层 |阅读模式
  SQL中的时间函数非常有用,特别是在我们进行初始赋值、复杂查询的时候,就显得特别方便。
  1、获得系统当前时间

select getdate()   
  2、DateName ( datepart , date )返回表示指定日期的指定日期部分的字符串。

--今天是2009-2-24--星期二

SELECT DATENAME(year, getdate()) AS 'Year Name' --------返回:2009

SELECT DATENAME(month, getdate()) AS 'Month Name'  --------返回:02

SELECT DATENAME(weekday, getdate()) AS 'Weekday Name'------返回:星期二  


  3、DATEADD (datepart , number, date ),在向指定日期加上一段时间的基础上,返回新的 datetime 值。

select DateAdd(MM,2,'2008-8-8') --------------返回:2008-10-08 00:00:00.000

select DateAdd(dd,2,'2008-8-8') --------------返回:2008-08-10 00:00:00.000

select dateadd(hh,-1,getdate()) --------------返回:2009-02-23 12:46:46.450,返回前一个小时的时间  
  4、DATEDIFF ( date-part, date-expression-1, date-expression-2 )  返回两个日期之间的间隔。
    此函数计算两个指定日期之间日期部分的数目。结果为日期部分中等于(date2 - date1)的有符号的整数值。
  
  
  
  

SELECT datediff( hour, '4:00AM', '5:50AM' )---------------------------返回: 1

SELECT datediff( month, '1987/05/02', '1995/11/15' )------------------返回: 102

SELECT datediff( day, '00:00', '23:59' )------------------------------返回:0

SELECT datediff( day,  '1999/07/19 00:00',  '1999/07/23 23:59' )------返回:4

SELECT datediff( month, '1999/07/19', '1999/07/23' )------------------返回:0

SELECT datediff( month, '1999/07/19', '1999/08/23' )------------------返回:1  
  实例:查询当天更新的数据
  

select * from tableName where datediff(dd,F_EditTime,getdate())=0  

  
  5、DATEPART ( datepart ,date )返回代表指定日期的指定日期部分的整数。

--今天是2009-2-24 星期二
SELECT DATEPART(year,getdate()) as 'Year'    --------返回:2009

SELECT DATEPART(month,getdate()) as 'Month'   ---------返回:2

SELECT DATEPART(weekday,getdate()) as 'Weekday' ---------返回:3,如:Sunday = 1、Saturday = 7

SELECT DAY(getdate())             -----------------------返回:24  
  备注:DAY、MONTH、和 YEAR 函数分别是 DATEPART(dd, date)、DATEPART(mm, date)、和 DATEPART(yy, date) 的同义词。
  
  
  附录:datepart
  日期部分缩写Yearyy, yyyyquarterqq, qMonthmm, mdayofyeardy, yDaydd, dWeekwk, wwHourhhminutemi, nsecondss, smillisecondms

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-81554-1-1.html 上篇帖子: SQL Server唯一约束的使用 下篇帖子: SQL Server 2008空间数据应用系列五:数据表中使用空间数据类型
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表