In MariaDB, SIGN()
is een ingebouwde functie die het teken van zijn argument retourneert als -1
, 0
, of 1
, afhankelijk van of het argument negatief, nul of positief is.
Syntaxis
De syntaxis gaat als volgt:
SIGN(X)
Waar X
is de waarde waarvoor het teken moet worden geretourneerd.
Voorbeeld 1
Hier is een voorbeeld om te demonstreren:
SELECT SIGN(9);
Resultaat:
+---------+ | SIGN(9) | +---------+ | 1 | +---------+
In dit voorbeeld is de waarde positief, en dus 1
wordt geretourneerd.
Voorbeeld 2
Hier zijn nog enkele waarden om de mogelijke outputs te demonstreren:
SELECT
SIGN(8),
SIGN(-8),
SIGN(0);
Resultaat:
+---------+----------+---------+ | SIGN(8) | SIGN(-8) | SIGN(0) | +---------+----------+---------+ | 1 | -1 | 0 | +---------+----------+---------+
Niet-numerieke argumenten
Hier is een voorbeeld van wat er gebeurt als we niet-numerieke argumenten geven:
SELECT SIGN('Nine');
Resultaat:
+--------------+ | SIGN('Nine') | +--------------+ | 0 | +--------------+ 1 row in set, 1 warning (0.000 sec)
Laten we eens kijken naar de waarschuwing:
SHOW WARNINGS;
Resultaat:
+---------+------+------------------------------------------+ | Level | Code | Message | +---------+------+------------------------------------------+ | Warning | 1292 | Truncated incorrect DOUBLE value: 'Nine' | +---------+------+------------------------------------------+
Nullargument
SIGN()
retourneert null
als het argument null
is :
SELECT SIGN(null);
Resultaat:
+------------+ | SIGN(null) | +------------+ | NULL | +------------+
Onjuist aantal parameters
SIGN()
. aanroepen met het verkeerde aantal argumenten, of zonder argumenten resulteert in een fout:
SELECT SIGN();
Resultaat:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'SIGN'
En:
SELECT SIGN(10, 2);
Resultaat:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'SIGN'