I MariaDB, POW()
er en indbygget funktion, der returnerer værdien af dets første argument hævet til styrken af dets andet argument.
Syntaks
Syntaksen ser sådan ud:
POW(X,Y)
Det returnerer X
hævet til Y
.
POWER()
funktion er et synonym til POW()
, så det kan også gøres sådan her:
POWER(X,Y)
Eksempel
Her er et eksempel til demonstration:
SELECT POW(2, 3);
Resultat:
+-----------+ | POW(2, 3) | +-----------+ | 8 | +-----------+
Negative værdier
Her er nogle eksempler, der bruger negative værdier:
SELECT
POW(-2, 3),
POW(2, -3),
POW(-2, -3);
Resultat:
+------------+------------+-------------+ | POW(-2, 3) | POW(2, -3) | POW(-2, -3) | +------------+------------+-------------+ | -8 | 0.125 | -0.125 | +------------+------------+-------------+
Ikke-numeriske argumenter
Her er et eksempel på, hvad der sker, når vi giver ikke-numeriske argumenter:
SELECT POW('Homer', 'Symptom');
Resultat:
+-------------------------+ | POW('Homer', 'Symptom') | +-------------------------+ | 1 | +-------------------------+ 1 row in set, 2 warnings (0.000 sec)
Lad os se advarslen:
SHOW WARNINGS;
Resultat:
+---------+------+---------------------------------------------+ | Level | Code | Message | +---------+------+---------------------------------------------+ | Warning | 1292 | Truncated incorrect DOUBLE value: 'Homer' | | Warning | 1292 | Truncated incorrect DOUBLE value: 'Symptom' | +---------+------+---------------------------------------------+
Nul-argumenter
POW()
returnerer null
hvis et argument er null
:
SELECT
POW(2, null),
POW(null, 3),
POW(null, null);
Resultat:
+--------------+--------------+-----------------+ | POW(2, null) | POW(null, 3) | POW(null, null) | +--------------+--------------+-----------------+ | NULL | NULL | NULL | +--------------+--------------+-----------------+
Manglende argumenter
Kalder POW()
med det forkerte antal argumenter eller uden argumenter resulterer i en fejl:
SELECT POW();
Resultat:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'POW'
Og:
SELECT POW(10, 2, 3);
Resultat:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'POW'