Tính lũy thừa trong MySQL: POW() / POWER() thay vì ^
Toán tử ^ trong MySQL là Bitwise XOR, KHÔNG phải lũy thừa. Để tính base^exponent, dùng hàm POW() hoặc POWER().
1. Tạo bảng và chèn dữ liệu
mysql> CREATE TABLE DemoTable (
BaseValue INT,
PowerValue FLOAT
);
mysql> INSERT INTO DemoTable VALUES (4, 1.9867), (10, 6.789), (20, 8.9);
2. Xem dữ liệu
mysql> SELECT * FROM DemoTable;
+-----------+------------+ | BaseValue | PowerValue | +-----------+------------+ | 4 | 1.9867 | | 10 | 6.789 | | 20 | 8.9 | +-----------+------------+
3. Truy vấn: Tính lũy thừa với POWER()
mysql> SELECT POWER(BaseValue, PowerValue) AS Result FROM DemoTable;
4. Kết quả
+--------------------+ | Result | +--------------------+ | 15.707700779637127 | | 6151769.213414385 | | 379460404302.3042 | +--------------------+
Giải thích:
POWER(4, 1.9867)≈ 4² = 16 (gần 15.71)POWER(10, 6.789)≈ 10⁶.⁷⁸⁹ = 6.15 triệuPOWER(20, 8.9)≈ 20⁸.⁹ = 3.79×10¹¹
POW() vs POWER(): Hai hàm hoàn toàn tương đồng. POWER() tuân thủ SQL standard, POW() là alias ngắn gọn.
Ví dụ ^ là XOR (Bitwise):
mysql> SELECT 5 ^ 3; -- 5=101₂, 3=011₂ → XOR=110₂ = 6 +-------+ | 5 ^ 3 | +-------+ | 6 | +-------+
Các hàm toán học liên quan:
SQRT(x): Căn bậc 2EXP(x): e^xLOG(x),LOG10(x),LOG2(x): LogaritABS(x): Giá trị tuyệt đối