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

Jak SIGN() funguje v MariaDB

V MariaDB SIGN() je vestavěná funkce, která vrací znaménko svého argumentu jako -1 , 0 , nebo 1 v závislosti na tom, zda je argument záporný, nulový nebo kladný.

Syntaxe

Syntaxe vypadá takto:

SIGN(X)

Kde X je hodnota, pro kterou se má vrátit znaménko.

Příklad 1

Zde je příklad k demonstraci:

SELECT SIGN(9);

Výsledek:

+---------+
| SIGN(9) |
+---------+
|       1 |
+---------+

V tomto příkladu je hodnota kladná, a tedy 1 je vráceno.

Příklad 2

Zde jsou některé další hodnoty pro demonstraci možných výstupů:

SELECT 
    SIGN(8),
    SIGN(-8),
    SIGN(0);

Výsledek:

+---------+----------+---------+
| SIGN(8) | SIGN(-8) | SIGN(0) |
+---------+----------+---------+
|       1 |       -1 |       0 |
+---------+----------+---------+

Nečíselné argumenty

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

SELECT SIGN('Nine');

Výsledek:

+--------------+
| SIGN('Nine') |
+--------------+
|            0 |
+--------------+
1 row in set, 1 warning (0.000 sec)

Podívejme se na varování:

SHOW WARNINGS;

Výsledek:

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

Nulový argument

SIGN() vrátí null pokud je jeho argument null :

SELECT SIGN(null);

Výsledek:

+------------+
| SIGN(null) |
+------------+
|       NULL |
+------------+

Nesprávný počet parametrů

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

SELECT SIGN();

Výsledek:

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

A:

SELECT SIGN(10, 2);

Výsledek:

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

  1. sql use příkaz s proměnnou

  2. SQLite EXISTUJE

  3. 19 Online zdroje informací o chybách návrhu databáze

  4. ERROR 1396 (HY000):Operace CREATE USER selhala pro 'jack'@'localhost'