MySQL การใช้งานฟังก์ชัน SIN()

ฟังก์ชัน SIN(x) ใน MySQL ใช้สำหรับคำนวณค่าซาย (Sine) ของมุม x โดยที่ x ต้องเป็นมุมในหน่วยเรเดียน (radians) ฟังก์ชันนี้เหมาะมากกับงานที่เกี่ยวข้องกับตรีโกณมิติ (Trigonometry) เช่น กราฟิก, การคำนวณมุม, ระบบแผนที่ หรือแม้แต่การสร้างเอฟเฟกต์การเคลื่อนไหวในเกม

ประโยชน์ของฟังก์ชัน SIN()

  • ใช้ในสูตรทางคณิตศาสตร์/ฟิสิกส์ เช่น
    • การคำนวณตำแหน่งในวงกลม
    • การเคลื่อนที่แบบฮาร์มอนิก (sinusoidal motion)
    • ระบบแผนที่ หรือคำนวณระยะทางแบบ Haversine
  • ใช้สร้างเอฟเฟกต์คลื่นหรือการเคลื่อนไหวในเกม

รูปแบบการใช้งาน

SIN(x)
  • x คือค่ามุมในหน่วยเรเดียน
  • ถ้า x เป็น NULL ผลลัพธ์จะเป็น NULL

ตัวอย่างการใช้งาน

มุมที่เป็นเรเดียน

SQL
SELECT SIN(PI()/2);       -- ผลลัพธ์: 1
SELECT SIN(PI());         -- ผลลัพธ์: ~0 (≈ 0.000000...)
SELECT SIN(0);            -- ผลลัพธ์: 0
SELECT SIN(-PI()/2);      -- ผลลัพธ์: -1

มุมที่เป็น “องศา” (ต้องแปลงก่อนด้วย RADIANS())

SQL
SELECT SIN(RADIANS(30));   -- ผลลัพธ์: 0.5
SELECT SIN(RADIANS(90));   -- ผลลัพธ์: 1
SELECT SIN(RADIANS(180));  -- ผลลัพธ์: ~0

คำนวณพิกัดในวงกลม

SQL
SELECT 
  RADIANS(angle_deg) AS rad,
  SIN(RADIANS(angle_deg)) AS y_pos
FROM (
  SELECT 0 AS angle_deg
  UNION SELECT 90
  UNION SELECT 180
  UNION SELECT 270
) AS angles;

สร้างค่าคลื่นซายสำหรับกราฟหรือภาพเคลื่อนไหว

SQL
SELECT x, ROUND(SIN(x), 2) AS sin_wave
FROM (
  SELECT 0 AS x
  UNION SELECT PI()/4
  UNION SELECT PI()/2
  UNION SELECT 3*PI()/4
  UNION SELECT PI()
) AS data;
แชร์เรื่องนี้