SQL Server基础 SQL函数

 

一 聚合函数(统计函数)

计算个数   count(  )  

                     select count(*) from 表名

求和  sum(  )

                    select sum(列名) from 表名

求平均数  avg ()

                   select avg(列名) from 表名

求最大值  max ()

                   select max(列名) from 表名

求最小值  min()

                   select min(列名) from 表名

 

二.数学函数

  操作一个数据,返回一个结果

取上限  ceiling ()

                select code,name,ceiling(price) from car ;         --进行取值运算后 列名 消失 可用 as 起别名

取下限  floor ()

              select floor(price) from car

绝对值   ABS()

四舍五入  round  (A  ,B  )                                           -- A是要求的值或列,B是小数点后保留多少位

                   select round ( oil , 0 )  from car                    --小数位只看指定位数后面一位是否需要进位,不累加      

圆周率  PI( ) ( 括号里不需要加东西)

                   round  (PI( ),2  )

开根号   SQRT ()

平方,乘以自己   SQUARE ()

 

三.字符串函数 

转换大写   upper()

          select upper(pic) from car;

转换小写     lower()

去左侧空格    ltrim ( )                             --  无两侧去空格的函数                           

去右侧空格    rtrim( )

截取   substring( A , B  , C  )                -- A 操作的目标对象 B 索引(索引从1开始)c 个数 截多少位 

         left (  ,  b )     ---从左边截取 b 位

        right (  , b )    ---从右边截取 b 位                                                                      

长度   len()

                select len('aaaaaa'); 返回几个长度

替换   replace( A ,B , C )                 -- A操作的目标对象 B 要被换掉的 C 要换上是

                 select replace('aaaaabbaaaaa','bb','haha');把第一个字符串中的bb替换成haha

翻转  reverse  ()

               select reverse('abc'); 结果是 cba

 

四 转换函数                                                              -- 在数据库中 +  : 字符串 拼接 , 值类型 数学运算

1 convert ( A , B )                       -- A 要转换成的类型   B 列/值

      convert ( nvarchar(10), oil )

2  cast( A  as  B )                     -- A列/值    B 要转换成的类型  

      cast ( oil  as  nvarchar (10) )

 

五.时间日期函数

获取当前系统时间       GetDate( )                       -- sysdatetime() 获取数据库服务的时间戳                                  

获取年月日                year()

(没有时 分 秒)        month()                 select year('1999-1-1')                                       

                              day()                     select month(GetDate( ) )                                                              

判断日期是否正确       isdate ()                         -- 返回bit类型,false是0,true是1                     

                                                select isdate('2000-2-31')         

添加时间                   dateadd( A , B , D )       --A 添加什么类型(year,month,day)   B 加多少   C 给谁加

                                                select dateadd(year,5,'2000-1-1')

返回星期几                datename(  weekday, 时间  )        --  返回的值是字符串     datepart 一样可以返回周几,但是返回的是int类型

                                              select datename(weekday,'2000-1-1')

                             datename(week,时间)       --第几周

                              datename(day,时间)          --这个月的第几天

                              datename(dayofyear,时间)--这年的第几天

 

posted @ 2017-03-13 21:53  唐宏昌  阅读(272)  评论(0编辑  收藏  举报