SQL中常用的的时间跟日期函数
用途:前系統日期、時間
舉例:select getdate()
Dateadd函數:
用途:在向指定日期加上一段時間的基礎上,返回新的 datetime值:
舉例:向日期加上2天,select dateadd(day,2,'2011-01-15') --返回:2011-01-17 00:00:00.000
?
Datediff函數:
用途:返回跨兩個指定日期的日期和時間邊界數:
舉例:select datediff(day,'2008-08-01','2008-08-18') --返回:17
?
Datename函數:
用途: 返回代表指定日期的指定日期部分的字符串:
舉例: select datename(weekday, '2011-01-27') --返回:星期四
?
Datepart函數:
用途: 返回代表指定日期的指定日期部分的整數:
舉例: select datepart(month, '2011-01-15') --返回 1
?
6.day(),month,year()—這個可以跟datepart對照一下
?
select當前日期=convert(varchar(10),getdate(),120),
當前時間=convert(varchar(8),getdate(),114)
?
?
select datename(dw,’2011-01-27)
?
select本年第多少周=datename(week,’2011-01-27’),
今天是周幾=datename(weekday,’2011-01-27)
*注釋:
這里整理了一些SQLserver里面可能經常會用到的日期格式轉換方法:
1.Select convert(varchar, getdate(), 120 )
2011-01-27 18:22:22
2.Select convert(varchar(12) , getdate(), 111 )
2011/01/27
3.select convert(varchar(12) , getdate(), 112 )
20110127
4.select convert(varchar(12) , getdate(), 102 )
2011.01.27
5.select convert(varchar(12) , getdate(), 101 )
27/01/2011
6.select convert(varchar(12) , getdate(), 103 )
01/27/2011
7.select convert(varchar(12) , getdate(), 104 )
01.27.2011
8.select convert(varchar(12) , getdate(), 105 )
01-27-2011
9.select convert(varchar(12) , getdate(), 106 )
01 27 2011
10.select convert(varchar(12) , getdate(), 107 )
27 01, 2011
11.select convert(varchar(12) , getdate(), 108 )
18:22:22
以上這些都是一些常用的日期格式轉換。
?
在日常的工作中,我們常常會遇到這樣一些問題:當空值“NULL”與非空值相加后,得到的確實空值,而不是我們想要的答案。
例如:1
?
| last_name | first_name |
| a | null |
?
根據上表,如果select last_name+first_name from table1
那么我們得到的值一定是一個NULL值,而不是我們想要的“a”。
2
?
?
| last_name | first_name |
| a |
?
?
?
而這個表中,如果 select last_name+first_name from table1
當表沒有值的時候就可以得到我們想要的結果“a”
?
綜上所述:
非Null+Null=Null
非Null+””=非Null
?
在SQLserver中,如果直接使一個空值與字符串相加,即NULL+‘’的結果也會是NULL值,有兩種方法使產生的結果為字符串:
使用:字段名=isnull(字段值,’’)+insull(串聯的字符串,’’)
設置 CONCAT_NULL_YIELDS_NULL值
當SET CONCAT_NULL_YIELDS_NULL為ON時,串聯空值與字符串將產生NULL結果。例如,SELECT’abc’+NULL將生產NULL。當SET CONCAT_NULL_YIELDS_NULL為OFF時,串聯空值與字符串將產生字符串本身(空值作為空字符串處理)。例如 SELECT’abc’+NULL將生成abc。
將字符串字段的缺省值設為“”
?
SD022
轉載于:https://www.cnblogs.com/liuzhuqing/archive/2013/03/19/7480589.html
總結
以上是生活随笔為你收集整理的SQL中常用的的时间跟日期函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 西门子step7安装注册表删除_如何完全
- 下一篇: mysql 代理 a_Keepalive