W MariaDB POW()
to funkcja wbudowana, która zwraca wartość pierwszego argumentu podniesioną do potęgi drugiego argumentu.
Składnia
Składnia wygląda tak:
POW(X,Y)
Zwraca X
podniesiony do potęgi Y
.
POWER()
funkcja jest synonimem POW()
, więc można to również zrobić w ten sposób:
POWER(X,Y)
Przykład
Oto przykład do zademonstrowania:
SELECT POW(2, 3);
Wynik:
+-----------+ | POW(2, 3) | +-----------+ | 8 | +-----------+
Wartości ujemne
Oto kilka przykładów z wartościami ujemnymi:
SELECT
POW(-2, 3),
POW(2, -3),
POW(-2, -3);
Wynik:
+------------+------------+-------------+ | POW(-2, 3) | POW(2, -3) | POW(-2, -3) | +------------+------------+-------------+ | -8 | 0.125 | -0.125 | +------------+------------+-------------+
Argumenty nieliczbowe
Oto przykład tego, co się dzieje, gdy dostarczamy argumenty nieliczbowe:
SELECT POW('Homer', 'Symptom');
Wynik:
+-------------------------+ | POW('Homer', 'Symptom') | +-------------------------+ | 1 | +-------------------------+ 1 row in set, 2 warnings (0.000 sec)
Zobaczmy ostrzeżenie:
SHOW WARNINGS;
Wynik:
+---------+------+---------------------------------------------+ | Level | Code | Message | +---------+------+---------------------------------------------+ | Warning | 1292 | Truncated incorrect DOUBLE value: 'Homer' | | Warning | 1292 | Truncated incorrect DOUBLE value: 'Symptom' | +---------+------+---------------------------------------------+
Argumenty zerowe
POW()
zwraca null
jeśli jakikolwiek argument jest null
:
SELECT
POW(2, null),
POW(null, 3),
POW(null, null);
Wynik:
+--------------+--------------+-----------------+ | POW(2, null) | POW(null, 3) | POW(null, null) | +--------------+--------------+-----------------+ | NULL | NULL | NULL | +--------------+--------------+-----------------+
Brakujące argumenty
Wywołanie POW()
z niewłaściwą liczbą argumentów lub bez żadnych argumentów powoduje błąd:
SELECT POW();
Wynik:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'POW'
Oraz:
SELECT POW(10, 2, 3);
Wynik:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'POW'