Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Toán tử ^ trong MySQL là XOR, dùng POW() hoặc POWER() cho lũy thừa

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ệu
  • POWER(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 2
  • EXP(x): e^x
  • LOG(x), LOG10(x), LOG2(x): Logarit
  • ABS(x): Giá trị tuyệt đối