四、SQL函数①(数学函数2)

作者: 小小一颗卤蛋 | 来源:发表于2020-04-13 09:04 被阅读0次

求正弦值:SIN()函数

它接受一个参数,这个参数为待计算正弦值的表达式。如

SELECT FName,FWeight,SIN(FWeight) FROM T_Person

求余弦值:COS ()函数

它接受一个参数,这个参数为待计算余弦值的表达式。如

SELECT FName,FWeight, COS(FWeight) FROM T_Person

求反正弦值:ASIN()函数

它接受一个参数,这个参数为待计算反正弦值的表达式。如

SELECT FName,FWeight, ASIN(1/FWeight) FROM T_Person

求反余弦值:ACOS()函数

它接受一个参数,这个参数为待计算反余弦值的表达式。如

SELECT FName,FWeight, ACOS(1/FWeight) FROM T_Person

求正切值:TAN()函数

它接受一个参数,这个参数为待计算正切值的表达式。如:

SELECT FName,FWeight, TAN(FWeight) FROM T_Person

求反正切值:ATAN()函数

它接受一个参数,这个参数为待计算反正切值的表达式。如

SELECT FName,FWeight, ATAN(FWeight) FROM T_Person

求2个变量的反正切

ATAN2函数(在MYSQLServer 中这个函数名称为ATN2)用来计算2 个变量的反正切,其使用格式为:ATAN2(X,Y),函数返回2 个变量X 和Y 的反正切。它类似于计算Y/X 的反正切,除了两个参数的符号被用来决定结果的象限。

执行下面的SQL语句:

MYSQL,Oracle,DB2:
SELECT FName,FWeight, ATAN2(FWeight,2) FROM T_Person

MSSQLServer:
SELECT FName,FWeight, ATN2(FWeight,2) FROM T_Person

求余切:COT()函数

它接受一个参数,这个参数为待计算余切值的表达式。在Oracle中不支持这个函数,不过根据余切是正切的倒数这一个特性,可以使用TAN()函数来变通实现。

执行下面的SQL语句:

MYSQL,MSSQLServer,DB2:
SELECT FName,FWeight, COT(FWeight) FROM T_Person

Oracle:
SELECT FName,FWeight,1/tan(FWeight) FROM T_Person

求圆周率π值

MYSQL 和MSSQLServer 中提供了PI()函数用来取得圆周率π值,这个函数不需要使用参数,在Oracle和DB2中不支持PI()函数,不过根据-1的反余弦值等于π值的这一特性,我们可以用ACOS(-1)来变通实现。

执行下面的SQL语句:

MYSQL,MSSQLServer:
SELECT FName,FWeight,FWeight *PI() FROM T_Person

Oracle,DB2:
SELECT FName,FWeight,FWeight * acos(-1) FROM T_Person

弧度制转换为角度制:DEGREES ()函数

它接受一个参数,这个参数为待转换的表达式。在Oracle和DB2 中不支持这个函数,不过根据:角度制=弧度制*180/π这一个特性,可以用变通方式来实现。

执行下面的SQL语句:

MYSQL,MSSQLServer:
SELECT FName,FWeight, DEGREES(FWeight) FROM T_Person

Oracle,DB2:
SELECT FName,FWeight,(FWeight*180)/acos(-1) FROM T_Person

角度制转换为弧度制:RADIANS ()函数

它接受一个参数,这个参数为待转换的表达式。在Oracle和DB2 中不支持这个函数,不过根据:弧度制=角度制*π/180这一个特性,可以用变通方式来实现。

执行下面的SQL语句:

MYSQL,MSSQLServer:
SELECT FName,FWeight, RADIANS(FWeight) FROM T_Person

Oracle,DB2:
SELECT FName,FWeight,(FWeight*acos(-1)/180) FROM T_Person

求符号:SIGN()函数

该用来返回一个数值的符号,如果数值大于0 则返回1,如果数值等于0 则返回0,如果数值小于0 则返回-1。该函数接受一个参数,这个参数为待求绝对值的表达式。
如:

SELECT FName,FWeight-48.68,SIGN(FWeight-48.68) FROM T_Person

求整除余数

MOD()函数用来计算两个数整除后的余数。该函数接受两个参数,第一个参数为除数,而第二个参数则是被除数。
在MYSQL 和Oracle 中提供了对MOD()函数的直接支持;
在MSSQLServer中不支持MOD(),不过MSSQLServer中直接提供了操作符“%”用来计算两个数的整除余数;
DB2中不支持求整除余数操作。

执行下面的SQL语句:

MYSQL,Oracle:
SELECT FName,FWeight,MOD(FWeight , 5) FROM T_Person

MSSQLServer:
SELECT FName,FWeight,FWeight % 5 FROM T_Person

求自然对数:LOG()函数

该用来计算一个数的自然对数值。该函数接受一个参数,此参数为待计算自然对数的表达式,在Oracle中这个函数的名称为LN()。

执行下面的SQL语句:

MYSQL,MSSQLServer,DB2:
SELECT FName,FWeight, LOG(FWeight) FROM T_Person

Oracle:
SELECT FName,FWeight, LN(FWeight) FROM T_Person

求以10为底的对数

LOG10()函数用来计算一个数的以10 为底的对数值。该函数接受一个参数,此参数为待计算对数的表达式,在Oracle中不支持这个函数,不过Oracle中有一个可以计算任意数为底的对数的函数LOG(m,n),它用来计算以m为底n的对数,我们将m设为常量10 就可以了。

执行下面的SQL语句:

MYSQL,MSSQLServer,DB2:
SELECT FName,FWeight, LOG10(FWeight) FROM T_Person

Oracle:
SELECT FName,FWeight,LOG(10,FWeight) FROM T_Person

求幂:POWER(X,Y)函数用来计算X的Y次幂。

执行下面的SQL语句:

SELECT FName,FWeight, POWER(1.18,FWeight) FROM T_Person

相关文章

  • 四、SQL函数①(数学函数2)

    求正弦值:SIN()函数 它接受一个参数,这个参数为待计算正弦值的表达式。如 求余弦值:COS ()函数 它接受一...

  • 四、SQL函数①(数学函数1)

    数据准备 创建数据表 准备数据值: MYSQL、MSSQLServer、DB2: Oracle: 求绝对值 ABS...

  • 7天玩转oracle笔记4-sql函数

    12.SQL函数 字符函数 数学函数 日期函数 转换函数 系统函数sys_context('userenv','变...

  • SQL-数学函数

    数学函数也是比较常用的函数,在SQL Server中提供了20多个用于处理整数与浮点值的数学函数。数学函数能够对数...

  • Hive sql常见操作

    基本sql操作 hive表操作 分区操作 Hive内置函数 (1)数学函数 常用的数学函数都有:round、flo...

  • 单行函数

    一、SQL函数概述 SQL函数分类 单行函数多行函数 单行函数语法 语法:函数名[(参数1,参数2,….)]注意:...

  • SQL函数

    SQL中函数分为聚合函数、数学函数、字符串函数、日期和时间函数、转换函数和元数据函数6种函数都具有类似的语法,都带...

  • 三. PHP与MySQL关系大揭秘

    PHP内置MySQL函数学习(1) PHP内置MySQL函数学习(2) PHP内置MySQL函数学习(2)

  • 四、SQL函数④(其他函数)

    类型转换 隐式转换:数据库系统自动将字符串类型转换为整数类型显式转换:使用类型转换函数转换。使用类型转换函数不仅可...

  • R高级数据管理--数学函数、统计函数和概率函数

    1.数学函数 2.统计函数 3.概率函数

网友评论

    本文标题:四、SQL函数①(数学函数2)

    本文链接:https://www.haomeiwen.com/subject/fkbwmhtx.html