mysql数据库函数、数学函数、FLOOR()不大于X的最大整数、LN()的自然对数、LOG(B,X)X的B进制对数、LOG2()的以2为底的对数、LOG10()的以10为底的对数、MOD、-CSDN博客文章浏览阅读887次,点赞21次,收藏13次。mysql数据库函数、数学函数、FLOOR()不大于X的最大整数、LN()的自然对数、LOG(B,X)X的B进制对数、LOG2()的以2为底的对数、LOG10()的以10为底的对数、MOD、https://blog.csdn.net/2301_77161927/article/details/141953736?spm=1001.2014.3001.5501mysql数据库函数、数学函数、ABS(X) 绝对值、ACOS(X)弧度制反余弦值、ASIN(X)弧度制反正弦值、ATAN(X)弧度制反正切值、ATAN2、CEIL(X)或CEILING(X)、………-CSDN博客文章浏览阅读1k次,点赞5次,收藏28次。mysql数据库函数、数学函数、ABS(X) 绝对值、ACOS(X)弧度制反余弦值、ASIN(X)弧度制反正弦值、ATAN(X)弧度制反正切值、ATAN2、CEIL(X)或CEILING(X)、………https://blog.csdn.net/2301_77161927/article/details/141936855?spm=1001.2014.3001.5501
数学函数
1、pi()返回π的(圆周率)的值。
PI() 函数在 MySQL 中用于返回圆周率 π(pi)的近似值。圆周率 π 是一个数学常数,表示圆的周长与直径之比,其值约为 3.141592653589793。
返回值
返回一个浮点数,表示 π 的近似值。
直接获取 π 的值:
select pi() as pi_values;
计算圆的周长:
如果你知道圆的半径 r,可以通过公式 2 * π * r 来计算圆的周长。
SELECT PI() * POWER(5, 2) AS area; -- 半径为 5 的圆的面积
计算扇形的面积:
扇形的面积可以用公式 (θ/360) * π * r^2 来计算,其中 θ 是扇形的角度(以度为单位),r 是半径。
SELECT (45 / 360) * PI() * POWER(5, 2) AS sector_area; -- 角度为 45 度,半径为 5 的扇形面积
2、POW(X,Y) 或 POWER(X,Y) - 返回 X 的 Y 次幂
POW(X, Y) 或 POWER(X, Y) 函数在 MySQL 中用于计算 X 的 Y 次幂,即 X 乘以自己 Y 次的结果。这个函数在进行数学计算时非常有用,特别是在处理需要指数运算的场景。
语法
POW(X, Y)
或
POWER(X, Y)
参数
X:基数,是要被乘的数。
Y:指数,表示 X 被乘的次数。
返回值
返回 X 的 Y 次幂的结果。如果 Y 为 0,则结果总是 1(除了当 X 也为 0 时,此时结果为 NULL,因为 0 的 0 次幂是未定义的)。
示例
正数的正指数:
SELECT POW(2, 3) AS pow_result;
结果将是 8,因为。
正数的负指数:
SELECT POW(2, -3) AS pow_result;
结果将是 0.125,因为。
负数的正指数:
SELECT POW(-2, 3) AS pow_result;
结果将是 -8,因为。
负数的负指数:
SELECT POW(-2, -3) AS pow_result;
结果将是 -0.125,因为。
基数为零的情况:
SELECT POW(0, 0) AS pow_result;
结果将是 NULL,因为是未定义的。
指数为零的情况:
SELECT POW(5, 0) AS pow_result;
结果将是 1,因为任何非零数的 0 次幂都是 1。
使用场景
计算复利:
如果你需要计算基于本金和利率的复利总额,可以使用 POW 函数:
SELECT principal * POW(1 + rate, years) AS compound_interest;
计算几何平均数:
在某些统计分析中,计算几何平均数时可能会用到 POW 函数:
SELECT POW((x1 * x2 * x3), 1/3) AS geometric_mean;
3、RADIANS(X) - 将角度值 X 转换为弧度值
RADIANS(X) 函数在 MySQL 中用于将角度值转换为弧度值。角度和弧度是两种不同的角度测量单位。角度通常以度为单位(如 30 度、90 度等),而弧度是一种基于圆的半径长度的角度测量单位。一个完整的圆周角为 360 度,而在弧度制下,一个完整的圆周角为2𝜋弧度。
公式
角度值转换为弧度值的公式如下:
弧度 = 角度。
语法
RADIANS(X)
参数
X:表示角度值。
返回值
返回角度值 X 对应的弧度值。
示例
将 180 度转换为弧度:
SELECT RADIANS(180) AS radians_value;
结果将是𝜋,即大约 3.14159。
将 90 度转换为弧度:
SELECT RADIANS(90) AS radians_value;
结果将是 ,即大约 1.5708。
将 45 度转换为弧度:
SELECT RADIANS(45) AS radians_value;
结果将是 ,即大约 0.7854。
实际应用
假设你有一个表 angles,其中包含一些角度值,并且你想将它们转换为弧度值:
CREATE TABLE angles (
id INT AUTO_INCREMENT PRIMARY KEY,
degree_value FLOAT
);
INSERT INTO angles (degree_value) VALUES (30), (60), (90), (120), (180);
SELECT id, degree_value, RADIANS(degree_value) AS radian_value
FROM angles;
4、RAND() 或 RAND(N)
RAND() 或 RAND(N) 函数在 MySQL 中用于生成一个随机数。具体来说,它可以生成一个介于 0 和 1 之间的随机浮点数。如果提供了参数 N,则生成的随机数会在 0 和 N 之间。
语法
无参数:
RAND()
这将返回一个介于 0(包括)和 1(不包括)之间的随机浮点数。
带参数:
RAND(N)
这将返回一个介于 0(包括)和 N(包括)之间的随机浮点数。
生成一个 0 到 1 之间的随机数:
SELECT RAND() AS random_number;
这将返回一个介于 0 和 1 之间的随机浮点数。
生成1到10之间的随机整数,可以这样写:
SELECT FLOOR(RAND() * 100) + 1;
生成一个 1 到 10 之间的随机整数:
SELECT FLOOR(RAND() * 10 + 1) AS random_number;
这里先用 RAND() 生成一个 0 到 1 之间的随机数,然后乘以 10 并加上 1,得到一个介于 1 和 11 之间的数。最后使用 FLOOR() 函数向下取整,确保结果是一个介于 1 和 10 之间的整数。
5、ROUND(X) 或 ROUND(X,D) - 返回 X 四舍五入到最接近的整数或 D 位小数。
ROUND(X) 或 ROUND(X, D) 函数在 MySQL 中用于将数值四舍五入到最接近的整数或指定的小数位数。这个函数可以根据需要保留一定的精度,并且按照标准的四舍五入规则工作。
语法
ROUND(X)
或者
ROUND(X, D)
参数
X:要四舍五入的数值。
D:可选参数,指定小数点后保留的位数。如果省略此参数,默认为 0,即四舍五入到最接近的整数。
返回值
四舍五入到整数:
SELECT ROUND(3.5) AS round_result;
结果将是 4,因为 3.5 四舍五入到最接近的整数是 4。
四舍五入到指定小数位数:
SELECT ROUND(3.555, 2) AS round_result;
结果将是 3.56,因为 3.555 四舍五入到两位小数是 3.56。
处理负数:
SELECT ROUND(-2.5) AS round_result;
结果将是 -2,因为 -2.5 四舍五入到最接近的整数是 -2。
处理负数并保留小数位数:
SELECT ROUND(-2.555, 2) AS round_result;
结果将是 -2.56,因为 -2.555 四舍五入到两位小数是 -2.56。
处理刚好位于两个整数中间的情况:
SELECT ROUND(2.5) AS round_result;
结果将是 2,因为根据 MySQL 的四舍五入规则,2.5 会四舍五入到离它最近的偶数,即 2。
处理刚好位于两个整数中间的情况并保留小数位数:
处理刚好位于两个整数中间的情况并保留小数位数:
SELECT ROUND(2.55, 1) AS round_result;
结果将是 2.6,因为 2.55 四舍五入到一位小数是 2.6。
6、SIGN(X) - 返回指示 X 符号的整数:-1 如果 X < 0;0 如果 X = 0;1 如果 X > 0
SIGN(X) 函数在 MySQL 中用于确定数值 X 的符号,并返回一个整数来表示该符号。具体来说:
如果 X 小于 0,则返回 -1。
如果 X 等于 0,则返回 0。
如果 X 大于 0,则返回 1。
参数
X:要检测符号的数值。
正数:
SELECT SIGN(5) AS sign_result;
结果将是 1,因为 5 大于 0。
负数:
SELECT SIGN(-5) AS sign_result;
结果将是 -1,因为 -5 小于 0。
零:
SELECT SIGN(0) AS sign_result;
结果将是 0,因为 0 等于 0。
使用场景
判断数值的符号:
SELECT id, value, SIGN(value) AS value_sign FROM your_table;
数据清理:
如果你需要标记数据集中的正数、负数或零值,可以使用 SIGN 函数来简化这一过程。
SELECT id, amount, SIGN(amount) AS amount_sign
FROM transactions;
7、SIN(X) - 返回 X(以弧度计)的正弦值
SIN(X) 函数在 MySQL 中用于计算给定角度(以弧度为单位)的正弦值。正弦函数是三角函数的一种,广泛应用于数学、物理和工程领域。在 MySQL 中,输入的角度必须是以弧度表示的。
语法
SIN(X)
参数
X:一个数值,代表一个角度,单位为弧度。
返回值
返回 X 弧度角的正弦值。该值的范围是从 -1 到 1。
计算 90 度角的正弦值:
SELECT SIN(RADIANS(90)) AS sin_90;
结果将是 1,因为 90 度角的正弦值是 1。
计算 45 度角的正弦值:
SELECT SIN(RADIANS(45)) AS sin_45;
结果将是大约 0.7071,因为 45 度角的正弦值约为 0.7071。
直接使用弧度计算:
SELECT SIN(PI()/4) AS sin_pi_over_4;
结果也将是大约 0.7071,因为 PI()/4 相当于 45 度角(π/4 弧度)。
计算 -90 度角的正弦值:
SELECT SIN(RADIANS(-90)) AS sin_minus_90;
结果将是 -1,因为 -90 度角的正弦值是 -1。
计算 0 度角的正弦值:
SELECT SIN(RADIANS(0)) AS sin_0;
结果将是 0,因为 0 度角的正弦值是 0。
使用场景
三角计算:
SELECT SIN(RADIANS(angle)) AS sine_value
FROM your_table;
这个查询可以用来计算表中每个角度(以度为单位)的正弦值。
物理或工程计算:
如果你需要根据角度计算力或其他物理量的分量,可以使用 SIN 函数来获取垂直方向上的分量。
8、SQRT(X) - 返回 X 的平方根。只有当 X 不小于 0 时才有定义
SQRT(X) 函数在 MySQL 中用于计算非负数 X 的平方根。如果 X 是一个非负数,那么 SQRT(X) 返回一个非负数 Y,使得 Y * Y = X。如果 X 是一个负数,则 SQRT(X) 将返回 NULL,因为在实数范围内,负数没有平方根。
语法
SQRT(X)
参数
X:一个非负数,其平方根将被计算。
返回值
返回 X 的平方根。如果 X 是负数,则返回 NULL。
计算正数的平方根:
SELECT SQRT(9) AS sqrt_result;
结果将是 3,因为 3 的平方等于 9。
计算零的平方根:
SELECT SQRT(0) AS sqrt_result;
结果将是 0,因为 0 的平方根是 0。
尝试计算负数的平方根:
SELECT SQRT(-9) AS sqrt_result;
结果将是 NULL,因为负数在实数范围内没有平方根。
计算浮点数的平方根:
SELECT SQRT(2.25) AS sqrt_result;
结果将是 1.5,因为 1.5 的平方等于 2.25。
使用场景
几何计算:
SELECT SQRT(x * x + y * y) AS distance FROM coordinates;
这个查询可以用来计算二维平面上从原点到各点的距离。
统计分析:
SELECT SQRT(VAR_POP(column_name)) AS standard_deviation FROM table_name;
9、 TAN(X) - 返回 X(以弧度计)的正切值
TAN(X) 函数在 MySQL 中用于计算给定角度(以弧度表示)的正切值。正切值是一个三角函数,其定义为一个角的正弦值与余弦值的比值。在直角三角形中,一个角的正切值等于该角的对边长度与邻边长度之比。
语法
TAN(X)
参数
X:表示角度的弧度值。请注意,在三角函数中,角度通常是用弧度而不是度数来表示的。如果你有一个以度数表示的角度,可以使用 RADIANS() 函数将其转换为弧度。
返回值
返回给定角度的正切值。
计算特定弧度的正切值:
SELECT TAN(PI()/4) AS tan_45_degrees;
结果将是 1,因为 PI()/4 等于 45 度的弧度值,而 45 度角的正切值是 1。
计算一个角度的正切值(度数转弧度):
SELECT TAN(-PI()/4) AS tan_minus_45_degrees;
结果将是 -1,因为 -PI()/4 等于 -45 度的弧度值,而 -45 度角的正切值是 -1。
计算一个较大的角度的正切值:
SELECT TAN(PI()/2) AS tan_90_degrees;
结果将是 16331239353195370 或者类似的大数值,这是因为 TAN(PI()/2) 接近无穷大,但实际在计算机中会被表示为一个非常大的数。理论上,90 度(或 PI()/2 弧度)的正切值是未定义的(无穷大)。
10、TRUNCATE(X,D) - 返回 X,四舍五入到 D 位小数
TRUNCATE(X, D) 函数在 MySQL 中用于截断数值 X 到 D 位小数,而不是四舍五入。这意味着它简单地删除了 D 位小数之后的所有数字,而不是根据四舍五入的规则进行处理。
语法
TRUNCATE(X, D)
参数
X:要截断的数值。
D:指定小数点后保留的位数。
返回值
返回经过截断后的数值。如果指定了 D,则返回带有 D 位小数的数值。
截断到整数:
SELECT TRUNCATE(3.5) AS truncate_result;
结果将是 3,因为 3.5 截断到整数部分是 3。
截断到指定小数位数:
SELECT TRUNCATE(3.555, 2) AS truncate_result;
结果将是 3.55,因为 3.555 截断到两位小数是 3.55。
处理负数:
SELECT TRUNCATE(-2.5) AS truncate_result;
结果将是 -2,因为 -2.5 截断到整数部分是 -2。
处理负数并保留小数位数:
SELECT TRUNCATE(-2.555, 2) AS truncate_result;
结果将是 -2.55,因为 -2.555 截断到两位小数是 -2.55。
处理刚好位于两个整数中间的情况:
SELECT TRUNCATE(2.5) AS truncate_result;
结果将是 2.5,因为 2.55 截断到一位小数是 2.5。