数学函数主要用来处理数值数据,主要的数学函数有:绝对值函数,三角函数(包括正弦函数,余弦函数,正切函数,余切函数)、对数函数,随机函数等。在错误产生时,数学函数将返回空值null。本次介绍各种数学函数的功能和用法。

1.绝对值函数ABS(x)和返回圆周率的函数PI()

 ABS(x)返回x的绝对值,PI()返回圆周率的值
 eg: select ABS(2),ABS(-3.3),ABS(-33),PI();
正数的绝对值是其本身,2的绝对值为2;负数的绝对值为其相反数,-3.3的绝对值为3.3,-33的绝对值为33。

2.平方根函数SQRT(x)

 SQRT(x)返回非负数x的二次方根
eg:select  SQRT(9), SQRT(40);

3.获取随机函数的函数RAND()和RAND(x)

 RAND(x)返回一个随机浮点值v,范围在0~1之间(即0<=v<=1.0).若指定一个整数参数x,则它被用作种子值,使用相同的种子数将产生重复序列。如果同一种子值多次调用RAND函数,它将返回同一生成值。
eg: select RAND(), RAND(), RAND();
 可以看到,不带参数的RAND()每次产生的随即数值是不同的。
eg: select RAND(10), RAND(10), RAND(11);
 可以看到,当RAND(x)的参数相同时,将产生相同的随机数,不同的x产生的随机数值不同。

4.四舍五入函数ROUND(x,y)

 ROUND(x,y)返回接近于参数x的数,其值保留到小数点后面y位,若y为负值,则将保留x值到小数点左边y位。
eg:select ROUND(1.38,1),  ROUND(1.38,0), ROUND(232.38,-1),  ROUND(232.38,-2);
  ROUND(1.38,1)保留小数点后面一位,四舍五入结果为1.4;ROUND(1.38,0)保留小数点后面0位,即返回四舍五入后的整数值,ROUND(232.38,-1)和ROUND(232.38,-2)分别保留小数点左边1位和2位。

5.符号函数SIGN(x)

 SIGN(x)返回参数的符号,x的值为负、零或正时,返回结果依次为-1、0或1。
eg: select SIGN(-21), SIGN(0), SIGN(21);
 SIGN(-21)返回-1,SIGN(0)返回0,SIGN(21)返回1

6.获取整数的函数CEILING(x)和FLOOR(x)

 CEILING(x)返回不小于x的最小整数值,FLOOR(x)返回不大于x的最大整数值;
 eg: select CEILING(-3.35), CEILING(3.35), FLOOR(-3.35), FLOOR(3.35);
 (1)、-3.35为负数,不小于-3.35的最小整数为-3,不小于3.35的最小整数值为4
 (2)、-3.35为负数,不大于-3.35的最小整数为-4,不大于3.35的最小整数值为3

7.幂运算函数POWER(x,y)、SQUARE(x)、和EXP(x)

 (i).  POWER(x,y)函数返回x的y次乘方的结果值;
 (ii). SQUARE(x)函数返回指定浮点值x的平方;
 (iii). EXP(x)函数返回e的x乘方后的值。
 eg: select  POWER(2,2), POWER(2.00,-2),  SQUARE(3), SQUARE(-3), SQUARE(0), EXP(3), EXP(-3), EXP(0);
 可以看到POWER(2,2)返回2的平方,结果为4;POWER(2.00,-2)返回2的-2次方,结果为0.25;
SQUARE(3)返回 3平方,结果为9;SQUARE(-3)返回-3的平方,结果为; SQUARE(0)返回0的平方,结果为0;
EXP(3)返回以e为底的3次方,结果为20.0855369231877, EXP(-3)返回以e为底的-3次方,结果为0.0497870683678639;
EXP(0)返回以e为底的0次方,结果为1。

8.对数的运算LOG(x)和LOG10(x)

 LOG(x)返回x的自然对数,x相对于基数e的对数。
 LOG10(x)返回x的基数为10的对数。
eg: select LOG(3),LOG(6),LOG10(1),LOG10(100),LOG10(1000);
 对数定义域不能为负数,10的0次方为1,所以LOG10(1)返回结果是0,10的2次方为100,所以LOG10(100)返回结果是2,10的3次方为1000,所以LOG10(1000)返回结果是3;

9.角度与弧度相互转换的函数RANDIANS(x)和DEGREES(x)

 RANDIANS(x)将参数x由角度转换为弧度。
 DEGREES(x)将参数x有弧度转换为角度。
eg: select RADIANS(90.0), RADIANS(180.0), DEGREES(PI()/2), DEGREES(PI());

10.正弦函数SIN(x)和反正弦函数ASIN(x)

 SIN(x)返回x的正弦,其中x为弧度值;
 ASIN(x)返回x的反正弦,即正弦x的值,若x不在-1到1的范围内,则返回NULL。
eg: select SIN(PI()/2),SIN(PI()),ASIN(1),ASIN(0);

11.余弦函数COS(x)和反余弦函数ACOS(x)

 COS(x)返回x的余弦,其中x为弧度值;
 ACOS(x)返回x的反余弦,即余弦x的值。若x不在-1到1范围之内,则返回NULL;
eg: select COS(0),COS(PI()),ACOS(1),ACOS(0);

12.正切函数TAN(x),反正切函数ATAN(x)和余切函数COT(x)

 TAN(x)返回x的正切,其中x为给定的弧度值;
 ATAN(x)返回x的反正切,即正切x的值;
 COT(x)返回x的余切。
eg:  select TAN(0.3),ROUND(TAN(PI()/2),0), ATAN(0.30933624960962325),ATAN(1),COT(0.3),1/TAN(0.3),COT(PI()/4);

Sql Server函数全解(二)数学函数的更多相关文章

  1. Sql Server函数全解<二>数学函数

    阅读目录 1.绝对值函数ABS(x)和返回圆周率的函数PI() 2.平方根函数SQRT(x) 3.获取随机函数的函数RAND()和RAND(x) 4.四舍五入函数ROUND(x,y) 5.符号函数SI ...

  2. Sql Server函数全解<一>字符串函数

    阅读目录 1.ASCII()函数 2.CHAR()函数 3.LEFT()函数 4.RIGHT()函数 5.LTRIM()函数 6.RTRIM()函数 7.STR()函数 8.字符串逆序的函数REVER ...

  3. Sql Server函数全解(一)字符串函数

    字符串函数用于对字符和二进制字符进行各种操作 1.ASCII()函数  ASCII(character_expression)函数用于返回字符串表达式中最左侧的ASCII代码值.参数character ...

  4. 学习如何看懂SQL Server执行计划(二)——函数计算篇

    二.函数计算部分 --------------------标量聚合--------------------/* 标量聚合-主要在聚合函数操作中产生 计算标量:根据行中的现有值计算出一个新值 流聚合:在 ...

  5. SQL Server进阶(十二)函数

    概述 函数有且只有一个输入参数和一个返回值,而存储过程没有这个限制: 返回表变量的函数可以当做VIEW或者临时表用在WHERE/HAVING/SELECT/JOIN语句中而存储过程不可以: 存储过程中 ...

  6. Sql Server函数全解<五>之系统函数

    原文:Sql Server函数全解<五>之系统函数  系统信息包括当前使用的数据库名称,主机名,系统错误消息以及用户名称等内容.使用SQL SERVER中的系统函数可以在需要的时候获取这些 ...

  7. Sql Server函数全解<四>日期和时间函数

    原文:Sql Server函数全解<四>日期和时间函数   日期和时间函数主要用来处理日期和时间值,本篇主要介绍各种日期和时间函数的功能和用法,一般的日期函数除了使用date类型的参数外, ...

  8. SQL Server 中截取字符串常用的函数

    SQL Server 中截取字符串常用的函数: 1.LEFT ( character_expression , integer_expression ) 函数说明:LEFT ( '源字符串' , '要 ...

  9. SQL Server中的LEFT、RIGHT函数

    SQL Server中的LEFT.RIGHT函数. LEFT:返回字符串中从左边开始指定个数字符. LEFT(character_expression,integer_expression); RIG ...

随机推荐

  1. bool型变量下标的时候javascript是不能允许的

    jother编码是我最开始想写的内容,原因有两点:1.原理比较简单,不需要太多关于算法的知识.2.比较有趣,是在对javascript有了很深的理解之后催生的产物.如果你只需要知道jother编码和解 ...

  2. asp.net[web.config] httphandlers 与实现自由定义访问地址

    今天一起来看一个简单的例子,主要是用来实现一个映射功能,我们一般访问一个网址的时候比如是这样的http://localhost:6166/WebSite1/api/request.aspx?strte ...

  3. (转载)H.264码流的RTP封包说明

    H.264的NALU,RTP封包说明(转自牛人) 2010-06-30 16:28 H.264 RTP payload 格式 H.264 视频 RTP 负载格式 1. 网络抽象层单元类型 (NALU) ...

  4. 开放式管理基础结构 OMI

    Windows 长久以来在 CIM 实施领域一直傲立桥头,而这一切都是从 WMI(Windows 管理基础结构)开始的.分布式管理任务组 (DMTF) 通用信息模型 (CIM) 是一种开放式标准,用于 ...

  5. Redis系列(二)-Hredis客户端设计及开源

    接上篇c#实现redis客户端(一),重新整理些了下. 阅读目录: 项目说明 Hredis设计图 单元测试场景 总结 项目说明 背景:因为有地方要用,而又没找到对sentinel良好支持的Net客户端 ...

  6. 现代程序设计 网页前端开发作业(to 邹欣老师)

    在一些著名的网站的搜索框上,会有一种“自动完成”功能. 比如google.百度和淘宝: 现在,我们来考虑如何实现这个功能. 第一步:模仿任意一个网站,编写一个类似的网页效果原型. 在这一步,不要估计开 ...

  7. 《Entity Framework 6 Recipes》中文翻译系列 (34) ------ 第六章 继承与建模高级应用之多条件与QueryView

    翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 6-10  创建一个多条件过滤 问题 你想使用多个条件为实体过滤表中的行. 解决方案 ...

  8. CSS3新特性,绘制常见图形

    前言:最近准备做一个自己的网页,设计稿中导航我准备设计成矩形,也有hover样式展示的矩形,当中一些头像等等.以前除了画圆,好像真没认真画过其他图形,今天就画画我们常见到的几个图形. 在此之前我们有必 ...

  9. atitit.闭包的概念与理解attilax总结v2 qb18.doc

    atitit.闭包的概念与理解attilax总结v2 qb18.doc 1.1. 闭包(Closure)是词法闭包(Lexical Closure)的简称,是引用了自由变量的函数.1 2. #---- ...

  10. 【Win10 应用开发】从前台应用触发后台任务

    有关后台任务的使用,估计大伙伴们不会陌生,而且老周曾经在某文中也简单讲述过.说到后台任务,老周想到了一个问题:有人问,后台任务一定要独立写到一个Runtime组件中吗,能不能写到主项目的代码中? 老周 ...