-----------------日期和时间函数-------------------
----1、getdate,返回当前的系统时间和日期返回类型datetime
select getdate()-----返回2013-12-11 20:57:01.560
----2、dateadd,对给定的日期加上一段时间返回新的datetime值
------:当前日期加上10天、第一个参数要改变的单位、第二个值改变的时长,
---第三个要改变的日期
select dateadd(day,10,'2012/10/1')---返回2012-10-11 00:00:00.000
----3、datediff返回两个日期之间的差值
select datediff(day,getdate(),dateadd(day,10,getdate()))----返回10
----4、datename返回指定日期部分的字符串描述,
------返回值类型nvarchar()
select datename(year,getdate())
select datename(month,getdate())
select datename(day,getdate())
select datename(hour,getdate())
select datename(minute,getdate())
select datename(second,getdate())
----5、datepart返回给定日期指定部分的整数形式
select datepart(year,getdate())
select datepart(month,getdate())
select datepart(day,getdate())
select datepart(hour,getdate())
select datepart(minute,getdate())
select datepart(second,getdate())
----6、day、month、year返回天、月、年的整数
select day(getdate())
select month(getdate())
select year(getdate())
-------------------------------------------------------------
-----------------------------数学函数------------------------
------1\ceiling大于等于的最大整数
select ceiling(123.4)---返回124
select ceiling(-123.4)--返回-123
------2\floor小于或等与的最小整数
select floor(123.4)---返回123
select floor(-123.4)--返回-124
------3\round舍入到指定精度
--第一个参数为原始数据,第二个参数为精度
--第二个参数大于零表示从小数点右边开始舍多少位
--第二个参数小于零表示从小数点左边开始舍多少位
--舍得时候要四舍五入
select round(523.125,0)---返回523.000
select round(523.125,1)---返回523.100
select round(523.125,2)---返回523.130
select round(523.125,3)---返回523.125
select round(523.125,4)---返回523.125
select round(523.125,-1)--返回520.000
select round(523.125,-2)--返回500.000
select round(623.125,-3)--返回1000.000--执行的时候可能出错
select round(523.125,-4)--返回0.000
-------------------------------------------------------------
---------------------------字符串函数------------------------
--1\left返回从左边开始指定个数的字符串
select left('aabbcc',3)--返回aab
--2\right返回从右边开始指定个数的字符串
select right('aabbcc',3)--返回bcc
--3\len返回给定字符串中字符(注意:不是字节)的个数
select len('hehe')--返回4
select len('呵呵')--返回2
--4\substrig返回字符串中指定位置后指定长度的字符串
select substring('aabbcc',2,4);---返回abbc
--5\ltrim删除字符串左边的起始空格
select left(' aabbcc',3)---返回a
select left(ltrim(' aabbcc'),3)---返回aab
--6\rtrim删除字符串右边的所有尾随空格,同上
--7\reverse返回字符串的逆向表达式
select reverse('hehe')--返回eheh
--8\space返回由重复的空格组成的字符串
select space(5)---返回五个空格
--9\str返回由数字数据转换来的字符数据
-----把123.45输出六位,保留1位小数
select str(123.45,6,0)-----返回123
select str(123.45,6,1)-----返回123.5
select str(123.45,6,5)-----返回123.45
--10\stuff将一个字符串插入到另一个字符串中(删除并插入相当于替换)
----:从第二个开始删除3个并把hhhhh插入到删除的位置
select stuff('abcde',2,3,'hhhhh')----返回ahhhhhe
----:从第一个开始删除一个并把hhhhh插入到删除的位置
select stuff('abcde',1,1,'hhhhh')----返回hhhhhbdcde
Sql Server 2008 日期和时间函数、数学函数、字符传函数小结
最新推荐文章于 2021-02-26 16:48:38 发布