三角学(SIN COS)

角度是弧度,而不是度数。所有计算均在 IEEE 754 64 位浮点中完成。所有浮点计算都会受到小错误的影响,称为机器ε(epsilon)错误 ,因此请避免尝试将它们进行相等性比较。使用浮点时无法避免这些错误; 它们内置于技术中。

如果在三角计算中使用 DECIMAL 值,它们将隐式转换为浮点数,然后再转换为十进制数。

正弦

返回以弧度表示的数字 X 的正弦值

SELECT SIN(PI()); -> 1.2246063538224e-16

余弦

当以弧度给出 X 时,返回 X 的余弦值

SELECT COS(PI()); -> -1

切线

返回以弧度表示的数字 X 的正切值。请注意,结果非常接近零,但不完全为零。这是机器ε的一个例子。

SELECT TAN(PI());   -> -1.2246063538224e-16

弧余弦(反余弦)

如果 X 在 -1 to 1 范围内,则返回 X 的反余弦值

SELECT ACOS(1);    -> 0
SELECT ACOS(1.01); -> NULL

弧正弦(反正弦)

如果 X 在 -1 to 1 范围内,则返回 X 的反正弦值

SELECT ASIN(0.2); -> 0.20135792079033

反正切(反正切)

ATAN(x) 返回单个数字的反正切。

SELECT ATAN(2); -> 1.1071487177941

ATAN2(X, Y) 返回两个变量 X 和 Y 的反正切。它类似于计算 Y / X 的反正切。但它在数值上更稳健:当 X 接近零时,t 正确运行,并且使用两个参数的符号确定结果的象限。

最佳实践建议尽可能使用 ATAN2() 而不是 ATAN() 编写公式。

 ATAN2(1,1);    -> 0.7853981633974483 (45 degrees)
 ATAN2(1,-1);   -> 2.356194490192345  (135 degrees)
 ATAN2(0, -1);  -> PI  (180 degrees)  don't try ATAN(-1 / 0)... it won't work

余切

返回 X 的余切

SELECT COT(12); -> -1.5726734063977

转变

SELECT RADIANS(90) -> 1.5707963267948966
SELECT SIN(RADIANS(90)) -> 1
SELECT DEGREES(1), DEGREES(PI()) -> 57.29577951308232, 180