メインコンテンツまでスキップ

ATAN

説明

アークタンジェント値を返します。

  • パラメータが1つの場合: xのアークタンジェントを返し、結果の範囲は[-π/2, π/2]です

  • パラメータが2つの場合: y/xのアークタンジェントを返し、ATAN2(y, x)と同じ動作で、結果の範囲は[-π, π]です

構文

ATAN([<y>, ]<x>)

パラメータ

パラメータ説明
<x>パラメータが1つの場合、逆正接として計算される値を示します。パラメータが2つの場合、水平座標(またはx値)、原点(0,0)からのx軸に沿った距離を示します。
<y>オプション。垂直座標(またはy値)、原点(0,0)からのy軸に沿った距離を表します。

戻り値

パラメータ x のatan値。

特殊なケース

単一パラメータ版

  • x がNaNの場合、NaNを返します
  • x が正の無限大の場合、π/2(約1.570796326794897)を返します
  • x が負の無限大の場合、-π/2(約-1.570796326794897)を返します
  • x がNULLの場合、NULLを返します

2パラメータ版

  • 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 |
+------------------------------+