Trong PostgreSQL, atan2()
là một hàm lượng giác trả về arctang, hoặc ngược tiếp tuyến, của x đã chỉ định và y tọa độ tính bằng radian.
Cú pháp
Cú pháp như sau:
atan2(y, x)
Ở đâu x
và y
là độ chính xác kép các giá trị.
Arctangent là góc từ trục x đến đường thẳng chứa điểm gốc (0, 0) và một điểm có tọa độ (x
, y
)
Ví dụ
Dưới đây là một ví dụ để chứng minh cách hoạt động của nó.
SELECT atan2(1, 1);
Kết quả:
0.7853981633974483
Điều này trả về arctang của điểm 1,1 tính bằng radian.
Lập luận phủ định
Đối số cũng có thể phủ định.
SELECT atan2(-1, -1);
Kết quả:
-2.356194490192345
Điều này trả về arctang của điểm -1, -1 tính bằng radian.
Atan2 () và Atan (x / y)
Sử dụng atan2(x, y)
về mặt chức năng tương đương với việc sử dụng atan(x/y)
.
Tuy nhiên, có một điểm khác biệt là, nếu bạn chỉ định giá trị y bằng 0, thì atan2()
sẽ không trả lại lỗi, ngược lại atan()
sẽ.
Đây là một ví dụ sử dụng atan2()
:
SELECT atan2(1, 0);
Kết quả:
1.5707963267948966
Và đây là những gì chúng tôi nhận được với atan()
khi cố gắng chia cho 0:
SELECT atan(1/0);
Kết quả:
ERROR: division by zero
Trả lại góc theo độ
Như đã đề cập, atan2()
trả về đối số của nó bằng radian . Để lấy nó ở độ , sử dụng atan2d()
hàm số.
atan2d()
hàm hoạt động giống hệt như atan2()
, ngoại trừ việc đối số của nó được trả về theo độ thay vì radian.