数学函数主要用来处理数值数据,主要的数学函数有:绝对值函数,三角函数(包括正弦函数,余弦函数,正切函数,余切函数)、对数函数,随机函数等。在错误产生时,数学函数将返回空值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函数全解(二)数学函数

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

  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. [LeetCode] Fraction to Recurring Decimal 分数转循环小数

    Given two integers representing the numerator and denominator of a fraction, return the fraction in ...

  2. 通过源码了解ASP.NET MVC 几种Filter的执行过程

    一.前言 之前也阅读过MVC的源码,并了解过各个模块的运行原理和执行过程,但都没有形成文章(所以也忘得特别快),总感觉分析源码是大神的工作,而且很多人觉得平时根本不需要知道这些,会用就行了.其实阅读源 ...

  3. setTimeout和setInterval从入门到精通

    我们在日常web前端开发中,经常需要用到定时器方法. 前端中的定时器方法是浏览器提供的,并不是ECMAScript规范中的.是window对象的方法. 浏览器中的定时器有两种, 一种是每间隔一定时间执 ...

  4. ubuntu下的apt-get内网本地源的搭建

    APT本地源的搭建(可用于局域网apt-get源搭建或者本地源) 本文档介绍使用apt-mirror软件搭建apt本地源 需求:内网开发环境由于其特定原因不能上外网,所以需要本地环境下的内网源来方便开 ...

  5. 【hihoCoder 1454】【hiho挑战赛25】【坑】Rikka with Tree II

    http://hihocoder.com/problemset/problem/1454 调了好长时间,谜之WA... 等我以后学好dp再来看为什么吧,先弃坑(╯‵□′)╯︵┻━┻ #include& ...

  6. [HTML5] ArrayBuffer与类型化数组

    写在前面 这是关于JS二进制操作的第三篇博客,前两篇详见: [HTML5] Blob对象 [HTML5] FileReader对象 此前从宏观角度介绍了如何通过JS创建一个二进制对象,并介绍了如何将本 ...

  7. 【编码】_C#中编码名称(Name)与页面标识(CodePage)的关系_编码gb2312的获取

    在写C#代码时,发现VS提供没有直接提供gb2312的中文编码, 所以,需要找到对应编码名称的codepage来调用想要的编码方式. 下面是微软编程提供的所有编码信息,包括编码名称,编码代码页标识符, ...

  8. 【IT】公司FTP服务器使用说明

    FTP服务器的作用:----------------------------------------------1.员工个人或者部门资料临时备份(而不是永久归档): 2.部门或员工间交换巨大资料: 3 ...

  9. Android基础总结(十一)

    Fragment(重要) 用途:在一个Activity里切换界面,切换界面时只切换Fragment里面的内容 生命周期方法跟Activity一致,可以理解把其为就是一个Activity fragmen ...

  10. C++中new,delete和new[] ,delete[]的分析

    转载在这里 http://www.cnblogs.com/hazir/p/new_and_delete.html