您的位置:首页 > 数据库

DateTime,DATEDIFF,GetDate(),sql语句时间限制条件

2009-08-06 16:27 375 查看
在使用SQL语句限制条件时,使用时间限制,很常用,也有很多地方需要统计一些数据而要使用时间限制语句。时间限制语句有很多种写法。但基本的还是围绕着DateTime,DATEDIFF,GetDate()等。其实,差不多任何的时间限制,都能使用DATEDIFF来完成。所以,下面先介绍一下DATEDIFF.

语法:DATEDIFF ( datepart , startdate , enddate )

返回指定的 startdate 和 enddate 之间所跨的指定 datepart 边界的计数(带符号的整数)。

参数

datepart 是指定所跨边界类型的 startdate 和 enddate 的一部分。 下表列出了所有有效的 datepart 参数。 用户定义的变量等效项是无效的。有year,month,day,hour,minute,second.week等。
startdate 是一个表达式,可以解析为 timedatesmalldatetimedatetimedatetime2datetimeoffset 值。date 可以是表达式、列表达式、用户定义的变量或字符串文字。从 enddate 减去 startdate。返回类型为:int.如:
SELECT DATEDIFF(year, '2005-12-31 23:59:59.9999999'
, '2006-01-01 00:00:00.0000000');


SELECT DATEDIFF(day, '2005-12-31 23:59:59.9999999'
[code], '2006-01-01 00:00:00.0000000');


[/code]
DATEDIFF(day,startdate,enddate)>30天,选择30天之前的记录。
DATEDIFF(Month,startdate,enddate)=0.选择同月内的记录。DATEDIFF(Month,Article_Check_Time,GetDate())=0。


DateTime自定义时间,重构构造函数DateTime time = new DateTime(2009,08,06,10,12,22).定义时间只能定义静态时间。不能动态的。不能如DateTime(year,month,1,10,20,11).不能这样使用。


    对于SQL语句中的时间限制,用DATEDIFF就能实现了,用好DATEDIFF的各个参数就可以了。


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: