MariaDBでは、SIGN()
引数の符号を-1
として返す組み込み関数です。 、0
、または1
、引数が負、ゼロ、または正のいずれであるかによって異なります。
構文
構文は次のようになります:
SIGN(X)
ここでX
記号を返す値です。
例1
デモンストレーションの例を次に示します。
SELECT SIGN(9);
結果:
+---------+ | SIGN(9) | +---------+ | 1 | +---------+
この例では、値は正であるため、1
返されます。
例2
可能な出力を示すために、さらにいくつかの値を示します。
SELECT
SIGN(8),
SIGN(-8),
SIGN(0);
結果:
+---------+----------+---------+ | SIGN(8) | SIGN(-8) | SIGN(0) | +---------+----------+---------+ | 1 | -1 | 0 | +---------+----------+---------+
非数値引数
数値以外の引数を指定するとどうなるかの例を次に示します。
SELECT SIGN('Nine');
結果:
+--------------+ | SIGN('Nine') | +--------------+ | 0 | +--------------+ 1 row in set, 1 warning (0.000 sec)
警告を見てみましょう:
SHOW WARNINGS;
結果:
+---------+------+------------------------------------------+ | Level | Code | Message | +---------+------+------------------------------------------+ | Warning | 1292 | Truncated incorrect DOUBLE value: 'Nine' | +---------+------+------------------------------------------+
ヌル引数
SIGN()
null
を返します 引数がnull
の場合 :
SELECT SIGN(null);
結果:
+------------+ | SIGN(null) | +------------+ | NULL | +------------+
パラメータカウントが正しくありません
SIGN()
の呼び出し 引数の数が間違っているか、引数がない場合、エラーが発生します:
SELECT SIGN();
結果:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'SIGN'
そして:
SELECT SIGN(10, 2);
結果:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'SIGN'