sql >> Databáze >  >> RDS >> MariaDB

Jak POW() funguje v MariaDB

V MariaDB, POW() je vestavěná funkce, která vrací hodnotu svého prvního argumentu umocněného na druhý argument.

Syntaxe

Syntaxe vypadá takto:

POW(X,Y)

Vrací X zvýšen na mocninu Y .

POWER() funkce je synonymem pro POW() , takže to lze udělat také takto:

POWER(X,Y)

Příklad

Zde je příklad k demonstraci:

SELECT POW(2, 3);

Výsledek:

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

Záporné hodnoty

Zde je několik příkladů, které používají záporné hodnoty:

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

Výsledek:

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

Nečíselné argumenty

Zde je příklad toho, co se stane, když poskytneme nečíselné argumenty:

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

Výsledek:

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

Podívejme se na varování:

SHOW WARNINGS;

Výsledek:

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

Nulové argumenty

POW() vrátí null pokud je nějaký argument null :

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

Výsledek:

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

Chybí argumenty

Volání POW() s nesprávným počtem argumentů nebo bez jakýchkoli argumentů vede k chybě:

SELECT POW();

Výsledek:

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

A:

SELECT POW(10, 2, 3);

Výsledek:

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

  1. Chyba při načítání oci8.so se serverem Ubuntu 17.04 php 7 a apache2

  2. Pomocí AT TIME ZONE opravte starý přehled

  3. Jak mohu zjistit a svázat změny mezi hodnotami řádků v tabulce SQL?

  4. Jak vytvořit histogram v MySQL?