ฟังก์ชัน ABS() (ย่อมาจาก absolute) เป็นฟังก์ชันทางคณิตศาสตร์ใน MySQL ที่ใช้สำหรับคืนค่าตัวเลขในรูปแบบ “ค่าสัมบูรณ์” หรือค่าบวกของตัวเลข
ประโยชน์ของฟังก์ชัน ABS()
- ใช้ในการเปรียบเทียบผลต่างโดยไม่สนใจเครื่องหมาย (บวกหรือลบ)
- เหมาะสำหรับการคำนวณระยะทาง, ผลต่างคะแนน, การเบี่ยงเบนมาตรฐาน, ค่าความคลาดเคลื่อน
- ใช้ใน
WHERE,ORDER BY, หรือHAVINGเพื่อจัดการกับข้อมูลเชิงตัวเลข
รูปแบบการใช้งาน
ABS(number)
numberคือตัวเลขที่ต้องการหาค่าสัมบูรณ์ รองรับประเภทINT,FLOAT,DECIMAL,DOUBLE, ฯลฯ- หากเป็น
NULLจะคืนค่าNULL
ตัวอย่างการใช้งาน
SQL
SELECT ABS(25); -- ผลลัพธ์: 25
SELECT ABS(-25); -- ผลลัพธ์: 25
SELECT ABS(0); -- ผลลัพธ์: 0
SELECT ABS(-123.45); -- ผลลัพธ์: 123.45
SELECT ABS(NULL); -- ผลลัพธ์: NULLหาค่าความแตกต่างของจำนวนเงินที่เก็บจากลูกค้าเทียบกับจำนวนที่ตั้งเป้าไว้
SQL
SELECT customer_id, amount,
ABS(amount - 5.00) AS deviation
FROM payment
LIMIT 5;- หาผลต่างระหว่าง
amountที่ลูกค้าจ่ายกับเป้าหมาย5.00โดยไม่สนใจว่ามากหรือน้อยกว่า - ใช้
ABS()เพื่อให้ผลลัพธ์เป็นบวกเสมอ
แสดงเฉพาะรายการที่ผลต่างเกิน 2 หน่วย
SQL
SELECT customer_id, amount
FROM payment
WHERE ABS(amount - 5.00) > 2;