文章收藏了关于sql 时间日期函数,有需要使用这些函数的朋友可以参考一下下哦。
①getdate():返回当前系统日期、时间
| 代码如下 | 复制代码 |
当前系统时间=GETDATE() |
|

②dateadd(interval,number,date):返回指定日期加一段时间后的新datetime。
代码如下
复制代码

③datediff(interval,date1,date2): 返回跨两个指定时间的差值。
| 代码如下 | 复制代码 |
DATEDIFF(DAY,'2011-12-5','2012-1-1') --返回:<span>27</span><br>select 天数=datediff(DAY,'2012-01-01','2013-01-01'),月数=datediff(MONTH,'2013-01-01','2012-01-01')
|
|
④datepart(interval,date)和datename(interval,date):都是返回指定日期interval部分的值,不同的是,datepart()返回int类型的整数,
datename返回nvarchar类型的字符串。
| 代码如下 | 复制代码 |
1 DATEPART(YEAR,'2011-12-5') -–datepart()返回:<span>2011 (int类型)</span><br>2 DATENAME (YEAR,'2011-12-5') -–datename()返回:<span>2011 (nvarchar类型)</span><br>3 <br>4 DATEPART(MONTH,'2011-12-5') -–datepart()返回:<span>12 (int类型)</span><br>5 DATENAME(MONTH,'2011-12-5') –-datename()返回:December(nvarchar类型) |
|
在此,把不同参数interval罗列出来,我们可以更清晰地看出,datepart()和datename()的区别。
| 代码如下 | 复制代码 |
1 select '当前时间(datepart)'=GETDATE(), 年=DATEPART(YEAR,GETDATE()),季=DATEPART(QUARTER,GETDATE()),月=DATEPART(Month,GETDATE()),<br>2 周=DATEPART(WEEK,GETDATE()),周日数=DATEPART(WEEKDAY,GETDATE()),日=DATEPART(DAY,GETDATE()),<br>3 年日数=DATEPART(DAYOFYEAR,GETDATE()),时=DATEPART(HOUR,GETDATE()),分=DATEPART(MINUTE,GETDATE()),<br>4 秒=DATEPART(SECOND,GETDATE()),毫秒=DATEPART(MILLISECOND,GETDATE())<br>5 <br>6 select '当前时间(datename)'=GETDATE(), 年=DATENAME(YEAR,GETDATE()),季=DATENAME(QUARTER,GETDATE()),月=DATENAME(Month,GETDATE()),<br>7 周=DATENAME(WEEK,GETDATE()),周日数=DATENAME(WEEKDAY,GETDATE()),日=DATENAME(DAY,GETDATE()),<br>8 年日数=DATENAME(DAYOFYEAR,GETDATE()),时=DATENAME(HOUR,GETDATE()),分=DATENAME(MINUTE,GETDATE()),<br>9 秒=DATENAME(SECOND,GETDATE()),毫秒=DATENAME(MILLISECOND,GETDATE()) |
|

⑤year(), month(),day():返回指定日期的年、月、日。
| 代码如下 | 复制代码 |
1 YEAR('2011-12-5')=DATEPART(YEAR,'2011-12-5') --返回:2011<br>2 MONTH('2011-12-5')= DATEPART(Month,'2011-12-5') --返回:12<br>3 DAY('2011-12-5')= DATEPART(DAY,'2011-12-5') --返回:5
|
|
