ฟังก์ชัน ACOS() (Arc Cosine) ใน MySQL ใช้เพื่อคำนวณค่า “arc cosine” ของจำนวนที่กำหนด (เป็นค่ามุมในหน่วยเรเดียน)
ประโยชน์ของฟังก์ชัน ACOS()
- ใช้ในการคำนวณมุมจากค่า cosine ในงานทางคณิตศาสตร์ วิทยาศาสตร์ หรือวิศวกรรม
- ใช้ในการคำนวณระยะทางบนทรงกลม เช่น หาระยะทางระหว่างพิกัด GPS (Great-circle distance)
- ใช้ในระบบเกม, การวิเคราะห์ภาพ, การคำนวณทางเรขาคณิต หรือกราฟิก 3 มิติ
รูปแบบการใช้งาน
ACOS(x)
xคือตัวเลขที่อยู่ในช่วง -1 ถึง 1- หาก
xอยู่นอกเหนือจากช่วงนี้ ผลลัพธ์จะเป็นNULL - หาก
xเป็นNULLจะคืนค่าNULL
- หาก
ช่วงค่าที่ได้จาก ACOS()
| ค่าของ x | ผลลัพธ์ ACOS(x) (เรเดียน) |
|---|---|
| 1 | 0 |
| 0 | π/2 ≈ 1.5708 |
| -1 | π ≈ 3.1416 |
ตัวอย่างการใช้งาน
SQL
SELECT ACOS(1); -- ผลลัพธ์: 0
SELECT ACOS(0); -- ผลลัพธ์: 1.5707963267949
SELECT ACOS(-1); -- ผลลัพธ์: 3.1415926535898
SELECT ACOS(2); -- ผลลัพธ์: NULL (เพราะเกินช่วง)
SELECT ACOS(NULL); -- ผลลัพธ์: NULLตัวอย่างจากการประยุกต์ใช้ (เช่น คำนวณระยะห่างระหว่างพิกัด GPS)
สูตร Haversine หรือ Spherical Law of Cosines ใช้ ACOS() เพื่อคำนวณระยะทาง
SQL
SELECT 6371 * ACOS(
COS(RADIANS(13.7563)) * COS(RADIANS(14.9799)) *
COS(RADIANS(102.6529) - RADIANS(100.5018)) +
SIN(RADIANS(13.7563)) * SIN(RADIANS(14.9799))
) AS distance_km;6371คือรัศมีของโลก (กิโลเมตร)- พิกัดตัวอย่าง: กรุงเทพฯ (
13.7563, 100.5018) → นครราชสีมา (14.9799, 102.6529) ACOS()ใช้คำนวณมุมระหว่างจุดสองจุดบนโลก
หมายเหตุ
- ค่าที่รับได้ต้องอยู่ในช่วง
-1ถึง1เท่านั้น - ค่าที่เกินช่วงนี้จะคืนค่า
NULL - ฟังก์ชันนี้คำนวณเป็นเรเดียน หากต้องการเป็น “องศา” ให้แปลงโดยสูตร
DEGREES(ACOS(x)) - ใช้กับตัวเลขทศนิยมที่มีความแม่นยำสูงจะให้ผลลัพธ์แม่นยำกว่า