sql >> Base de Datos >  >> RDS >> MariaDB

Cómo funciona POW() en MariaDB

En MariaDB, POW() es una función integrada que devuelve el valor de su primer argumento elevado a la potencia de su segundo argumento.

Sintaxis

La sintaxis es así:

POW(X,Y)

Devuelve X elevado a la potencia de Y .

El POWER() función es sinónimo de POW() , por lo que también se puede hacer así:

POWER(X,Y)

Ejemplo

Aquí hay un ejemplo para demostrarlo:

SELECT POW(2, 3);

Resultado:

+-----------+
| POW(2, 3) |
+-----------+
|         8 |
+-----------+

Valores negativos

Estos son algunos ejemplos que usan valores negativos:

SELECT 
    POW(-2, 3),
    POW(2, -3),
    POW(-2, -3);

Resultado:

+------------+------------+-------------+
| POW(-2, 3) | POW(2, -3) | POW(-2, -3) |
+------------+------------+-------------+
|         -8 |      0.125 |      -0.125 |
+------------+------------+-------------+

Argumentos no numéricos

Este es un ejemplo de lo que sucede cuando proporcionamos argumentos no numéricos:

SELECT POW('Homer', 'Symptom');

Resultado:

+-------------------------+
| POW('Homer', 'Symptom') |
+-------------------------+
|                       1 |
+-------------------------+
1 row in set, 2 warnings (0.000 sec)

Veamos la advertencia:

SHOW WARNINGS;

Resultado:

+---------+------+---------------------------------------------+
| Level   | Code | Message                                     |
+---------+------+---------------------------------------------+
| Warning | 1292 | Truncated incorrect DOUBLE value: 'Homer'   |
| Warning | 1292 | Truncated incorrect DOUBLE value: 'Symptom' |
+---------+------+---------------------------------------------+

Argumentos nulos

POW() devuelve null si algún argumento es null :

SELECT 
    POW(2, null),
    POW(null, 3),
    POW(null, null);

Resultado:

+--------------+--------------+-----------------+
| POW(2, null) | POW(null, 3) | POW(null, null) |
+--------------+--------------+-----------------+
|         NULL |         NULL |            NULL |
+--------------+--------------+-----------------+

Argumentos faltantes

Llamando a POW() con el número incorrecto de argumentos, o sin ningún argumento da como resultado un error:

SELECT POW();

Resultado:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'POW'

Y:

SELECT POW(10, 2, 3);

Resultado:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'POW'