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

    Given an array and a value, remove all instances of that value in place and return the new length. T ...

  2. jsp的九大内置对象

    九大内置对象 jsp servlet   对象名 类型 使用范围 request HttpServletRequest 请求 浏览器--->服务器 response HttpServletRes ...

  3. 使用bat(批处理文件类型)两步更改笔记本IP

    一.背景 在南农工的第三年里,学校终于给教学区覆盖了无线网NJAUPK,这解决了我在汇贤楼教室上自习没网写web的尴尬处境!经常在9栋和汇贤楼教学区之间来回,遇见了一个大问题:宿舍里无线需要更改IPV ...

  4. 每日一记-mybatis碰到的疑惑:String类型可以传入多个参数吗

    碰到一个觉得很疑惑的问题,Mybatis的parameterType为String类型的时候,能够接收多个参数的吗? 背景 初学Mybatis的时候,看的教程和书籍上都是在说基本的数据类型如:int. ...

  5. jQuery Mobile入门

    转:http://www.cnblogs.com/linjiqin/archive/2011/07/17/2108896.html 简介:jQuery Mobile框架可以轻松的帮助我们实现非常好看的 ...

  6. 【BZOJ-1127】KUP 悬线法 + 贪心

    1127: [POI2008]KUP Time Limit: 10 Sec  Memory Limit: 162 MBSec  Special JudgeSubmit: 317  Solved: 11 ...

  7. Django models Form model_form 关系及区别

    Django models Form model_form

  8. 关于 feature team 的一些内容

    矩阵式管理,是常见的经典管理架构.其最早起源于美国的航空航天部门,然后被美国人带到了日本,然后被日本人带到了台湾,然后台湾人带到大陆...矩阵管理最典型的特征是,组织架构按职能与专业划分,项目由跨越部 ...

  9. 用pyspider爬淘宝MM照片

    #!/usr/bin/env python # -*- encoding: utf-8 -*- # Created on 2016-12-09 15:24:54 # Project: taobaomm ...

  10. [虚拟机]Virtual Box的使用--共享文件夹

    最近为系统测试使用了虚拟机,VM太卡,所以使用了VBox,运行效果还不错 为了主机和客户机之前方便进行数据传输,一般采用文件夹共享的方式(当然,可以直接拖拽) 1,直接拖拽,需要做如下设置 主要的是“ ...