coalesce( expression [ ,…n ] )重回其参数中率先个非空表达式。

数据完整性是其他数据库系统要作保的重大。不管系统安顿得有多好,空数据值的标题总是存在。本文斟酌了在SQL
Server中拍卖那几个值时涉及的3个难点:计数、使用空表值以至外键管理。

生龙活虎、聚合函数

函数 功能
Avg 求平均
Min 求最小
Checksum_agg 返回组中各值的校检值。空值将被忽略
Sum 求和
Max 求最大值
Count 返回组中的项数。和count_big的区别在于始终返回int类型
Count_big 返回组中的项数。和count的区别在于始终返回bigint类型
Stdev 返回指定表达式中所有值的标准偏差
Stdevp 返回指定表达式中所有的总体标准偏差
Grouping 指示是否聚合group by列表中的指定列表达式。在结果集中,如果groupping返回1则指示聚合;如果返回0则指示不聚合。如果指定了group by,则grouping只能在select列表、having和order by 子句中
Var 返回指定表达式中所有值的方差
Varp 返回指定表达式中所有值的总体方差

一聚合函数(总计函数)!!!!!

 

用COUNT(*卡塔尔国管理空值

二、数学函数

函数 功能
Abs 返回指定数值表达式的绝对值(正值)的数学函数
Acos 数学函数,返回其余弦所指定的float表达式的角(弧度);也被称为反余弦
Asin 返回以弧度表示的角,其正弦为指定float表达式。也称为反正弦
Atan 返回以弧度表示的角,其正切为指定的float表达式。它也称之为反正切函数
Atn2 返回以弧度表示的角,该角位与正X轴和原点至点(y,x)的射线之间,其中x和y是这两个指定浮点表达式的值
Tan 返回输入表达式的正切值
Ceiling 返回大于或等于指定数值表达式的最小整数
Cos 一个数学函数,返回指定的float表达式返回指定角度(以弧度为单位)的三角正弦值
Sin 以近似数字(float)表达式返回指定角度(以弧度为单位)的三角正弦值
Cot 一个数学函数,返回指定的float表达式中所指定角度(以弧度为单位)的三角余切值
DEGREES 返回以弧度指定的角的相应角度
Exp 返回指定的float表达式的指数值
Floor 返回小于或等于指定数值表达式的最大整数
Log 返回指定的float表达式的自然对数
Log10 返回指定的float表达式的常用对数(以底数为10的对数)
PI 返回PI常量
Power 返回指定表达式的指定幂的值
Rand 返回从0~1之间的随机float值
Round 返回一个数值,,舍入到指定的长度或精度
Sign 返回指定表达式的正号(+1)、零(0)或负数(-1)
Sqrt 返回指定浮点数的平方根
Square 返回指定浮点数的平方
Radians 对于在数值表达式中输入的度数值返回弧度值

算算个数   count(  )  

Select coalesce(null,null,’1′,’2′) //结果为 1

                     select count(*) from 表名

coalesce(expression1**,**…n卡塔尔(英语:State of Qatar) 与此 case函数等效:

求和  sum(  )

 

                    select sum(列名) from 表名

CASE
WHEN (expression1 IS NOT NULL) THEN expression1

WHEN (expressionN IS NOT NULL) THEN expressionN
ELSE NULL
END

求平平均数量  avg ()

 

                   select avg(列名) from 表名

注意:
当第三个表明式为字符串且无法转化为整数时,若在前面包车型地铁表明式中有整数,那样的言辞是会报错的。
例如:

求最大值  max ()

Select COALESCE(‘a’,null,’1′,2卡塔尔国 //那是大错特错的

                   select max(列名) from 表名

这一定于

求最小值  min()

 

                   select min(列名) from 表名

select 
CASE
WHEN (‘a’ IS NOT NULL) THEN ‘a’
WHEN (2 IS NOT NULL) THEN 2
ELSE NULL
END //会现身谬误,因为系统不可能将a转变为相应的整数

 

 

二.数学函数:操作三个数目,再次来到二个结出

但是

取上限  ceiling ()

 

金沙国际官网 ,                select code,name,ceiling(price卡塔尔(英语:State of Qatar) from car ;         –进行取值运算后 列名 消失 可用 as
起小名

select 
CASE
WHEN (‘a’ IS NOT NULL) THEN ‘a’
WHEN (2 IS NOT NULL) THEN ‘2’
ELSE NULL
END //那是不利的

取下限  floor ()

 

              select floor(price) from car

由此大家在行使coalesce函数时,应该非常小心。
isnull( check_expression , replacement_value 卡塔尔(英语:State of Qatar) 使用指定的替换值替换
NULL。

replacement_value 必得是足以隐式转变为 check_expresssion 类型的门类。
在表stu中
金沙国际官网 1

绝对值   ABS()

select isnull(ssex,’p’卡塔尔 from stu //若ssex列中有NULL值,那么重临p

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

nullif( expression , expression
卡塔尔 要是多少个钦赐的表达式相等,则赶回空值,不然 NULLIF
再次来到第三个 expression 的值。

                   select round ( oil , 0 卡塔尔  from
car                    –小数位只看钦定位数前面壹个人是还是不是须求进位,不增多      

select nullif(1,1) //结果为 NULL
select nullif(1,2) //结果为 1

圆周率  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’卡塔尔(英语:State of Qatar);把第一个字符串中的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,时间)–那年的第几天

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图