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

ฟังก์ชัน LOG2() ใน MySQL ใช้เพื่อคำนวณลอการิทึมฐาน 2 (log₂) ของค่าตัวเลขที่กำหนด ฟังก์ชันนี้ตอบคำถามว่า “2 ยกกำลังเท่าใดถึงจะได้ค่า x” เป็นฟังก์ชันสำคัญในงานที่เกี่ยวกับ คอมพิวเตอร์, บิต, หน่วยความจำ, โครงสร้างข้อมูล, และความซับซ้อนของอัลกอริทึม

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

  • ใช้วิเคราะห์
    • จำนวนบิตที่ใช้แทนข้อมูล
    • ความลึกของ binary tree
    • จำนวนรอบในการค้นหาแบบ binary search
  • เหมาะสำหรับงาน
    • การเข้ารหัส (encryption)
    • การคำนวณหน่วย storage
    • การวิเคราะห์ประสิทธิภาพอัลกอริทึม

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

LOG2(x)
  • x คือค่าตัวเลขที่ต้องการคำนวณ log₂
  • x ต้องมากกว่า 0
  • ถ้า x ≤ 0 หรือ NULL จะคืนค่า NULL

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

SQL
SELECT LOG2(1);        -- ผลลัพธ์: 0   เพราะ 2^0 = 1
SELECT LOG2(2);        -- ผลลัพธ์: 1   เพราะ 2^1 = 2
SELECT LOG2(4);        -- ผลลัพธ์: 2   เพราะ 2^2 = 4
SELECT LOG2(8);        -- ผลลัพธ์: 3   เพราะ 2^3 = 8
SELECT LOG2(0.5);      -- ผลลัพธ์: -1  เพราะ 2^-1 = 0.5
SELECT LOG2(0);        -- ผลลัพธ์: NULL
SELECT LOG2(-4);       -- ผลลัพธ์: NULL

คำนวณจำนวนบิตขั้นต่ำที่ต้องใช้เพื่อเก็บจำนวนข้อมูล

SQL
SELECT CEIL(LOG2(1000)) AS bits_required;
-- ผลลัพธ์: 10 (ต้องใช้ 10 บิตเพื่อแทนเลข 0–999)

วิเคราะห์ความลึกของ Binary Tree จากจำนวนโหนด

SQL
SELECT FLOOR(LOG2(64)) AS tree_depth;
-- ผลลัพธ์: 6
แชร์เรื่องนี้