Последнее обновление
ATAN
Описание
Возвращает значение арктангенса.
-
При одном параметре: возвращает арктангенс
xв диапазоне [-π/2, π/2] -
При двух параметрах: возвращает арктангенс
y/xс тем же поведением, что и ATAN2(y, x); диапазон результата: [-π, π]
Синтаксис
ATAN([<y>, ]<x>)
Параметры
| Параметр | Описание |
|---|---|
<x> | При одном параметре задаёт значение, для которого нужно вычислить арктангенс; при двух параметрах задаёт горизонтальную координату (или значение x), то есть расстояние вдоль оси x от начала координат (0,0). |
<y> | Необязательный параметр, задающий вертикальную координату (или значение y), то есть расстояние вдоль оси y от начала координат (0,0) |
Возвращаемое значение
Арктангенс значения параметра x.
Особые случаи
Вариант с одним параметром
- Если
xимеет значение NaN, возвращается NaN - Если
xравен положительной бесконечности, возвращается π/2 (приблизительно 1.570796326794897) - Если
xравен отрицательной бесконечности, возвращается -π/2 (приблизительно -1.570796326794897) - Если
xимеет значение NULL, возвращается NULL
Вариант с двумя параметрами
- Если
yилиxимеет значение NaN, возвращается NaN - Если
x > 0иy = ±0.0, возвращается ±0 (знак совпадает со знакомy) - Если
x = 0.0(как +0.0, так и -0.0) иy > 0, возвращается π/2 (приблизительно 1.570796326794897) - Если
x = 0.0(как +0.0, так и -0.0) иy < 0, возвращается -π/2 (приблизительно -1.570796326794897) - Если
x < 0иy = +0.0, возвращается π (приблизительно 3.141592653589793); еслиx < 0иy = -0.0, возвращается -π - Если
y = +Infinityиxимеет конечное значение, возвращается π/2; еслиy = -Infinityиxимеет конечное значение, возвращается -π/2 - Если
y = +Infinityиx = +Infinity, возвращается π/4 (приблизительно 0.7853981633974483) - Если
y = -Infinityиx = +Infinity, возвращается -π/4 (приблизительно -0.7853981633974483) - Если
y = +Infinityиx = -Infinity, возвращается 3π/4 (приблизительно 2.356194490192345) - Если
y = -Infinityиx = -Infinity, возвращается -3π/4 (приблизительно -2.356194490192345) - Если
x = +Infinityи конечное значениеy> 0, возвращается 0; если конечное значениеy< 0, возвращается -0 - Если
x = -Infinityи конечное значениеy> 0, возвращается π; если конечное значениеy< 0, возвращается -π - Если
yилиxимеет значение NULL, возвращается NULL
Примеры
select atan(0);
+-----------+
| atan(0.0) |
+-----------+
| 0 |
+-----------+
select atan(2);
+--------------------+
| atan(2.0) |
+--------------------+
| 1.1071487177940904 |
+--------------------+
select atan(cast('nan' as double));
+-----------------------------+
| atan(cast('nan' AS DOUBLE)) |
+-----------------------------+
| NaN |
+-----------------------------+
select atan(cast('inf' as double));
+-----------------------------+
| atan(cast('inf' AS DOUBLE)) |
+-----------------------------+
| 1.570796326794897 |
+-----------------------------+
select atan(cast('-inf' as double));
+------------------------------+
| atan(cast('-inf' AS DOUBLE)) |
+------------------------------+
| -1.570796326794897 |
+------------------------------+