に最終更新
SIGN
説明
x の符号を返します。負の数、ゼロ、正の数に対して、それぞれ -1、0、1 を返します。
構文
SIGN(x)
パラメータ
| パラメータ | 説明 |
|---|---|
<x> | 符号を判定する値 |
戻り値
整数を返します。
-
x > 0 の場合は 1 を返し、正の数であることを示します。
-
x = 0 の場合は 0 を返し、ゼロであることを示します。
-
x < 0 の場合は -1 を返し、負の数であることを示します。
-
x が NULL の場合は NULL を返します。
浮動小数点数の正のゼロと負のゼロは、どちらも 0 を返します。浮動小数点数の正のゼロと負のゼロを区別するには、<signbit> 関数を使用できます。
例
select sign(3);
+-------------------------+
| sign(cast(3 as DOUBLE)) |
+-------------------------+
| 1 |
+-------------------------+
select sign(0);
+-------------------------+
| sign(cast(0 as DOUBLE)) |
+-------------------------+
| 0 |
+-------------------------+
select sign(-10.0);
+-----------------------------+
| sign(cast(-10.0 as DOUBLE)) |
+-----------------------------+
| -1 |
+-----------------------------+
select sign(null);
+------------+
| sign(NULL) |
+------------+
| NULL |
+------------+
select sign(cast('+0.0' as double)) , sign(cast('-0.0' as double));
+------------------------------+------------------------------+
| sign(cast('+0.0' as double)) | sign(cast('-0.0' as double)) |
+------------------------------+------------------------------+
| 0 | 0 |
+------------------------------+------------------------------+