Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

คำนวณยกกำลัง (Power) ใน MySQL ด้วยฟังก์ชัน POWER()

การคำนวณเลขยกกำลังด้วย POWER()

ฟังก์ชัน POWER(base, exponent) หรือ POW(base, exponent) คำนวณ baseexponent คืนค่า DOUBLE

Syntax

POWER(base, exponent)  -- หรือ POW(base, exponent)

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

สร้างตารางและเพิ่มข้อมูล:

mysql> CREATE TABLE DemoTable (Amount INT);
Query OK, 0 rows affected (0.89 sec)

mysql> INSERT INTO DemoTable VALUES (64), (144), (400);
Query OK, 3 rows affected

ข้อมูลต้นฉบับ:

mysql> SELECT * FROM DemoTable;
+--------+
| Amount |
+--------+
| 64     |
| 144    |
| 400    |
+--------+
3 rows in set (0.00 sec)

คำนวณยกกำลัง 2 (Square):

mysql> SELECT Amount, POWER(Amount, 2) AS CURRENT_AMOUNT FROM DemoTable;
+--------+----------------+
| Amount | CURRENT_AMOUNT |
+--------+----------------+
| 64     | 4096           |
| 144    | 20736          |
| 400    | 160000         |
+--------+----------------+
3 rows in set (0.04 sec)

การใช้งานเพิ่มเติม

  • Square Root (รากที่ 2): POWER(x, 0.5) หรือ SQRT(x)
  • Cube (ยกกำลัง 3): POWER(x, 3)
  • Exponential: POWER(10, x) หรือ EXP(x * LN(10))
  • Compound Interest: principal * POWER(1 + rate, periods)

ฟังก์ชันคณิตศาสตร์ที่เกี่ยวข้อง

ข้อควรระวัง

  • ผลลัพธ์เป็น DOUBLE อาจมี Precision Issue สำหรับตัวเลขใหญ่มาก
  • ฐานเป็นลบ + เลขชี้ไม่ใช่จำนวนเต็ม → ผลลัพธ์เป็น NULL (Complex Number)
  • ใช้ DECIMAL และคำนวณใน Application Layer หากต้องการ Precision สูง
ฟังก์ชันคำอธิบายตัวอย่าง
POWER(x, y)x ยกกำลัง yPOWER(2, 3) = 8
SQRT(x)รากที่ 2SQRT(16) = 4
EXP(x)e ยกกำลัง xEXP(1) = 2.718...
LN(x)Natural LogLN(2.718) ≈ 1
LOG(x, base)Logaritm baseLOG(8, 2) = 3
ABS(x)ค่าสัมบูรณ์ABS(-5) = 5
ROUND(x, d)ปัดทศนิยมROUND(3.14159, 2) = 3.14