求正弦值: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
网友评论