MySQL函数学习(二)—–数值型函数

注:笔记旨在记录

二、MySQL 数值型函数

\ 函 数 名 称 作 用 完 成 1 RAND

取随机数,可设置参数种子 勾 2 ABS

求x的绝对值 勾 3 SIGN

求x的正负符号 勾 4 SQRT

求X的平方根 勾 5 POW

求x的y次方 勾 6 MOD

取余,求N除以M的模 勾 7 LOG

求以B为底X的对数 勾 8 CEIL,FLOOR

向上,向下取整 勾 9 ROUND

对X的第D位四舍五入 勾 10 TRUNCATE

保留X小数点后D位 勾 11 PI

取π的值 勾 12 DEGREES,RADIANS

弧度,角度间的转换 勾 13 SIN,COS,TAN

正弦,余弦,正切 勾 14 ASIN,ACOS,ATAN,COT

反正弦,反余弦,反正切 勾

1. RAND() — 取随机数

1.1. 函数:

  • RAND() : 随机生成 0-1 的小数
  • RAND(X) : 输入种子X,获取存在的某值

1.2. sql示例:

SELECT rand,RAND(rand),RAND() from pwct

MySQL函数学习(二)-----数值型函数

注:同一x,即种子相同时,生成随机数相同;
种子为0,null,或字符串时,值都为RAND(0);

2. ABS(X) — 求绝对值

2.1. 函数:

  • ABS(X) : 求x的绝对值;

2.2. sql示例:

SELECT abs,ABS(abs) from pwct

MySQL函数学习(二)-----数值型函数

注:x的值为null时,结果为null;为非数字时,结果为0;

3. SIGN(X) — 获取X的+ —号

3.1. 函数:

  • SIGN(X): 获取数字X的正负符号。1表X为正数,-1表X为负数,0表数字0或其他字符。

3.1. sql示例:

   SELECT sign,SIGN(sign) from pwct

MySQL函数学习(二)-----数值型函数

4. SQRT(X) — 求平方根

4.1. 函数:

  • SQRT(X): 求X的平方根。

4.2. sql示例:

SELECT sqrt,SQRT(sqrt) from pwct

MySQL函数学习(二)-----数值型函数

注:X为null或负数时,结果为null;为0时结果为0。 SQRT(X)等同于power(x,0.5)

5. POW(X,Y),POWER(X,Y) — 求X的Y次方

5.1. 函数:

  • POW(X,Y): 求X的Y次方。0

5.2. sql示例:

SELECT n,m,POW(n,m),TRUNCATE(EXP(1),2) as e,EXP(n),EXP(m) from pwct

MySQL函数学习(二)-----数值型函数

6. MOD(N,M) — 求余

6.1. 函数:

  • MOD(N,M): 求余,即N除以M后所得的余数。

6.2. sql示例:

SELECT n,m,MOD(n,m) from pwct

MySQL函数学习(二)-----数值型函数

注:求余过程只取除数M的绝对值运算,且M不能为null,否则结果为null;结果正负与被除数N保持一致。

7. REPLACE — 替换字符串

7.1. 函数:

  • LOG(X): 取以e为底X的对数
  • LOG2(X): 取以2为底X的对数
  • LOG10(X): 取以10为底X的对数
  • LOG(B,X): 取以B为底X的对数;B∈(1,+∞),否则结果为null

7.2. sql示例:

SELECT LOG(EXP(2)),LOG(EXP(-2)),LOG2(4),LOG10(100),LOG(5,25)

MySQL函数学习(二)-----数值型函数

8. CEIL(X),FLOOR(X) — 上下取整

8.1. 函数:

  • CEIL(X)等同于 CEILING(X): 向上取整
  • FLOOR(X): 向下取整

8.2. sql示例:

SELECT ceil_floor,CEIL(ceil_floor),CEILING(ceil_floor),FLOOR(ceil_floor) from pwct

MySQL函数学习(二)-----数值型函数

注: 字段值为null,结果为null;字段值为0或其他非数字字符串,结果为0

9. ROUND(X,D) — 对X的第D位四舍五入

9.1. 函数:

  • ROUND(X): 对X进行四舍五入取整,等同于ROUND(X,0)。
  • ROUND(X,D):对X的第D位四舍五入。

9.2. sql示例:

SELECT round,ROUND(round),ROUND(round,3),ROUND(round,1),ROUND(round,-1),ROUND(round,-3) from pwct;

MySQL函数学习(二)-----数值型函数

注: D取值为任意整数, 正数表示 小数点后第D位做四舍五入, 负数表示 小数点前第D位四舍五入

10. TRUNCATE(X,D) — 保留X小数点后D位

10.1. 函数:

  • __TRUNCATE(X,D):保留X小数点后D位。

10.2. sql示例:

SELECT PI(),truncate(PI(),5),truncate(PI(),255)

MySQL函数学习(二)-----数值型函数

注: D取值为任意整数, 正数表示取X 小数点后前D位, 负数表示舍弃X 小数点前前D位,用0填补;
ROUND的区别在于是否做四舍五入。

11. PI() — 取π

11.1. 函数:

  • PI(): 取π。

12. DEGREES(X) ,RADIANS(X) — 弧转角,角转弧

12.1. 函数:

  • DEGREES(X):弧度变角度。
  • RADIANS(X):角度变弧度。

12.2. sql示例:

SELECT
   PI() as rad,DEGREES(PI()) as " DEGREES(rad)",
   180 as angle,RADIANS(180) as "RADIANS(angle)"
UNION
   SELECT PI()/2,DEGREES(PI()/2),90,RADIANS(90)
UNION
   SELECT -PI()/4,DEGREES(-PI()/4),-45,RADIANS(-45)
UNION
   SELECT PI()/6,DEGREES(PI()/6),30,RADIANS(30)

MySQL函数学习(二)-----数值型函数

注: π ; DEGREES(π) = 180 ; 180 ; π = RADIANS(180)
π/2 ; DEGREES(π/2) = 90 ; 90 ; π/2 = RADIANS(90)

13. SIN(X),COS(X),TAN(X) — 正弦,余弦,正切

13.1. 函数:

  • SIN(X): 正弦。
  • COS(X): 余弦。
  • TAN(X): 正切 , X≠(PI()/2)±nπ。

13.2. sql示例:

SELECT r,truncate(DEGREES(r),0) as angle,SIN(r),COS(r),TAN(r)
    from (SELECT PI()/2 as r
UNION SELECT PI()/3 UNION SELECT PI()/4
UNION SELECT PI()/6 UNION SELECT 0
UNION SELECT -PI()/6 UNION SELECT -PI()/2) t

MySQL函数学习(二)-----数值型函数

注:上表中r取值因除运算导致误差,所以各三角函数值存在误差。
当r取(PI()/2)±nπ近似值时,TAN(r)趋于无穷大和无穷小,符合正切函数。

14. ASIN(X),ACOS(X),ATAN(X),COT(X) –反正弦,反余弦,反正切,余切

14.1. 函数:

  • ASIN(X): 反正弦。X∈(-∞,+∞) 。
  • ACOS(X): 反余弦。X∈[-1,1]
  • ATAN(X): 反正切。X∈[-1,1]
  • COT(X): 余切。X ≠ nπ

14.2. sql示例:

SELECT ASIN(-1),ASIN(0),ASIN(1)         --  X∈(-∞,+∞)

结果: -1.5707963267948966 0 1.5707963267948966

SELECT ACOS(-1),ACOS(0),ACOS(1)         --  X∈[-1,1]

结果: 3.141592653589793 1.5707963267948966 0

SELECT ATAN(-1),ATAN(0),ATAN(1)         --  X∈[-1,1]

结果: -0.7853981633974483 0 0.7853981633974483

SELECT COT(0.000000001),COT(1),COT(PI()/2),COT(PI()-0.000000001)   --  X ≠ nπ

结果: 999999999.9999999 0.6420926159343306 6.123233995736766e-17 -999999794.7949913

Original: https://www.cnblogs.com/hmpn/p/15951947.html
Author: hmpn
Title: MySQL函数学习(二)—–数值型函数

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/621018/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球