数値関数を使用して、数値データに対してさまざまな操作を実行できます。 このトピックでは、数値関数の構文について説明し、AnalyticDB for MySQLで数値関数を使用する方法の例を示します。
ABS: 引数の絶対値を返します。
ACOS: 引数のアークコサインを返します。
ASIN: 引数のアークサインを返します。
ATAN: 引数のアークタンジェントを返します。
ATAN2: xをyで割った結果のアークタンジェントを返します。
CEILINGまたはCEIL: xの値を最も近い整数に切り上げます。
COS: 引数のコサインを返します。
COT: 引数のコタンジェントを返します。
CRC32: 引数の巡回冗長検査 (CRC) コードを返します。
DEGREES: ラジアンを度に変換します。
EXP: eの値 (自然対数の底) をxの累乗で返します。
FLOOR: xの値を最も近い整数に切り下げます。
LN: 引数の自然対数を返します。
LOG: 引数の対数を返します。
LOG2: 引数の対数を底2に返します。
LOG10: 10を底とする引数の対数を返します。
PI: piの値を返します。 Piは、円の直径に対する円の円周の比である。
POWERまたはPOW: xの値をyの累乗で返します。
RADIANS: 度をラジアンに変換します。
RAND: 指定された数値範囲内の乱数を返します。
ROUND: 引数の丸められた値を返します。
SIGN: 引数の符号を返します。
SIN: 引数の正弦を返します。
SQRT: 引数の平方根を返します。
TAN: 引数のタンジェントを返します。
ABS
abs(x)説明: この関数は
xの絶対値を返します。入力値のデータ型: TINYINT、SMALLINT、INT、BIGINT、DOUBLE、FLOAT、またはDECIMAL。
戻り値のデータ型:
入力値のデータ型がTINYINT, SMALLINT, INT, またはBIGINTの場合, 戻り値のデータ型はBIGINTとなります。
入力値のデータ型がDOUBLEまたはFLOATの場合、戻り値のデータ型はDOUBLEです。
入力値のデータ型がDECIMALの場合、戻り値のデータ型はDECIMALです。
例:
SELECT abs(4.5);次の情報が返されます。
+----------+ | abs(4.5) | +----------+ | 4.5 | +----------+SELECT abs(-4);次の情報が返されます。
+--------+ | abs(4) | +--------+ | 4 | +--------+
ACOS
acos(x) 説明: この関数は、
xのアークコサインを返します。xが1より大きい場合、またはxが-1より小さい場合、NULLが返されます。入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT acos(0.5);次の情報が返されます。
+--------------------+ | acos(0.5) | +--------------------+ | 1.0471975511965979 | +--------------------+
ASIN
asin(x) 説明: この関数は、
xのアークサインを返します。xが1より大きい場合、またはxが-1より小さい場合、NULLが返されます。入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT asin(0.5);次の情報が返されます。
+--------------------+ | asin(0.5) | +--------------------+ | 0.5235987755982989 | +--------------------+
ATAN
atan(x) 説明: この関数は、
xのアークタンジェントを返します。入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT atan(0.5);次の情報が返されます。
+--------------------+ | atan(0.5) | +--------------------+ | 0.4636476090008061 | +--------------------+
ATAN2
atan2(x, y) 説明: この関数は、
xをyで割った値の逆正接を返します。入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT atan2(0.5,0.3);次の情報が返されます。
+--------------------+ | atan2(0.5,0.3) | +--------------------+ | 1.0303768265243125 | +--------------------+
天井または天井
ceiling(x)
ceil(x)説明: この関数は、最も近い整数に切り上げられた
xの値を返します。入力値のデータ型: TINYINT、SMALLINT、INT、BIGINT、DOUBLE、FLOAT、またはDECIMAL。
戻り値のデータ型:
入力値のデータ型がTINYINT, SMALLINT, INT, またはBIGINTの場合, 戻り値のデータ型はBIGINTとなります。
入力値のデータ型がDOUBLEまたはFLOATの場合、戻り値のデータ型はDOUBLEです。
入力値のデータ型がDECIMALの場合、戻り値のデータ型はDECIMALです。
例:
SELECT ceiling(4);次の情報が返されます。
+------------+ | ceiling(4) | +------------+ | 4 | +------------+SELECT ceil(-4.5);次の情報が返されます。
+------------+ | ceil(-4.5) | +------------+ | -4 | +------------+
COS
cos(x) 説明: この関数は
xの余弦を返します。入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT cos(1.3);次の情報が返されます。
+---------------------+ | cos(1.3) | +---------------------+ | 0.26749882862458735 | +---------------------+
COT
cot(x) 説明: この関数は、
xのコタンジェントを返します。入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT cot(1.234);次の情報が返されます。
+---------------------+ | cot(1.234) | +---------------------+ | 0.35013639786701445 | +---------------------+
CRC32
crc32(x) 説明: この関数は
xのCRCコードを返します。入力値のデータ型: VARBINARY。
戻り値のデータ型: BIGINT。
例:
SELECT crc32('China');次の情報が返されます。
+-----------------+ | crc32('China') | +-----------------+ | 737014929 | +-----------------+
DEGREES
degrees(x) 説明: この関数はラジアンを度に変換します。
入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT degrees(1.3);次の情報が返されます。
+-------------------+ | degrees(1.3) | +-------------------+ | 74.48451336700703 | +-------------------+
EXP
exp(x) 説明: この関数は、
e(自然対数の底) の値をxの累乗で返します。入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT exp(4.5);次の情報が返されます。
+-------------------+ | exp(4.5) | +-------------------+ | 90.01713130052181 | +-------------------+
FLOOR
floor(x)説明: この関数は、最も近い整数に切り捨てられた
xの値を返します。入力値のデータ型: TINYINT、SMALLINT、INT、BIGINT、DOUBLE、FLOAT、またはDECIMAL。
戻り値のデータ型:
入力値のデータ型がTINYINT, SMALLINT, INT, またはBIGINTの場合, 戻り値のデータ型はBIGINTとなります。
入力値のデータ型がDOUBLEまたはFLOATの場合、戻り値のデータ型はDOUBLEです。
入力値のデータ型がDECIMALの場合、戻り値のデータ型はDECIMALです。
例:
SELECT floor(7);次の情報が返されます。
+----------+ | floor(7) | +----------+ | 7 | +----------+SELECT floor(0.8);説明AnalyticDB for MySQLは、0.8をDECIMAL型の値に変換します。 入力値のデータ型がDECIMALの場合、戻り値のデータ型はDECIMALです。
次の情報が返されます。
+-------------+ | floor(0.8) | +-------------+ | 0 | +-------------+SELECT floor(4/5);説明AnalyticDB for MySQLは、4/5をDOUBLEタイプの値に変換します。 入力値のデータ型がDOUBLEの場合、戻り値のデータ型はDOUBLEです。 CAST関数を使用して、floor(4/5)=0.0をINTEGER型またはBIGINT型の値に変換できます。 詳細については、「CAST functions」トピックの「CAST AS BIGINT」セクションをご参照ください。
次の情報が返されます。
+-------------+ | floor(4/5) | +-------------+ | 0.0 | +-------------+
LN
ln(x) 説明: この関数は、
xの自然対数を返します。入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT ln(2.718281828459045);次の情報が返されます。
+-----------------------+ | ln(2.718281828459045) | +-----------------------+ | 1.0 | +-----------------------+
LOG
log(x)
log(x, y) 説明:
x引数のみを指定した場合、この関数は
xの自然対数を返します。xとyの両方の引数が指定されている場合、この関数は
yの対数を底のxに返します。
入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT log(16);次の情報が返されます。
+-------------------+ | log(16) | +-------------------+ | 2.772588722239781 | +-------------------+SELECT log(10,100);次の情報が返されます。
+-------------+ | log(10,100) | +-------------+ | 2.0 | +-------------+
LOG2
log2(x) 説明: この関数は、引数の対数を底2に返します。
入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT log2(8.7654);次の情報が返されます。
+-------------------+ | log2(8.7654) | +-------------------+ | 3.131819928389146 | +-------------------+
LOG10
log10(x) 説明: この関数は、引数の対数を底10に返します。
入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT log10(100.876);次の情報が返されます。
+--------------------+ | log10(100.876) | +--------------------+ | 2.0037878529824615 | +--------------------+
PI
pi()説明: この関数はpiの値を返します。
戻り値のデータ型: DOUBLE。
例:
SELECT pi();次の情報が返されます。
+-------------------+ | pi() | +-------------------+ | 3.141592653589793 | +-------------------+
力または捕虜
power(x, y)
pow(x, y)説明: この関数は、
xの値をyの累乗で返します。入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT power(1.2,3.4);次の情報が返されます。
+-------------------+ | power(1.2,3.4) | +-------------------+ | 1.858729691979481 | +-------------------+SELECT pow(-2,-3);次の情報が返されます。
+------------+ | pow(-2,-3) | +------------+ | -0.125 | +------------+
RADIANS
radians(x) 説明: この関数は度をラジアンに変換します。
入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT radians(60.0);次の情報が返されます。
+--------------------+ | radians(60.0) | +--------------------+ | 1.0471975511965976 | +--------------------+
RAND
rand()
rand()*(y-x)+x説明: この関数は、指定した数値範囲内の乱数を返します。
rand()関数の入力引数は指定できません。 rand() 関数は、0以上1未満の数値をランダムに返します。rand()*(y-x)+ x関数を使用することもできます。 この関数は、xからyの範囲内の数値をランダムに返します。 返される数値は、x以上y未満です。戻り値のデータ型: DOUBLE。
例:
SELECT rand();次の情報が返されます。
+--------------------+ | rand() | +--------------------+ | 0.6613712594764614 | +--------------------+次のサンプルステートメントは、3〜12の範囲内の浮動小数点数を返します。
SELECT rand()*(12-3)+3;次の情報が返されます。
+-------------------+ | rand()*(12-3)+3 | +-------------------+ | 9.073329270781976 | +-------------------+
ROUND
round(x)
round(x,d)説明: この関数は、
xの丸め値を返します。dは小数点以下の桁数を指定します。dのデフォルト値は0です。 戻り値のデータ型はxと同じです。xがnullの場合、NULLが返されます。dが0より大きい場合、引数は指定された小数点以下の桁数に丸められます。dが0に等しい場合、引数は最も近い整数に丸められます。dが0未満の場合、引数は小数点の左にある指定された小数点数に丸められます。
入力値のデータ型: TINYINT、SMALLINT、INT、BIGINT、DOUBLE、FLOAT、またはDECIMAL。
戻り値のデータ型:
入力値のデータ型がTINYINT, SMALLINT, INT, またはBIGINTの場合, 戻り値のデータ型はBIGINTとなります。
入力値のデータ型がDOUBLEまたはFLOATの場合、戻り値のデータ型はDOUBLEです。
入力値のデータ型がDECIMALの場合、戻り値のデータ型はDECIMALです。
例:
次のサンプル文は、345.983を最も近い整数に丸めます。
SELECT round(345.983,0);次の情報が返されます。
+------------------+ | round(345.983,0) | +------------------+ | 346.000 | +------------------+次のサンプル文は、小数点以下1桁まで345.123を丸めます。
SELECT round(345.123,1);次の情報が返されます。
+------------------+ | round(345.123,1) | +------------------+ | 345.100 | +------------------+次のサンプルステートメントでは、小数点の左に345.984を小数点1桁まで丸めます。
SELECT round(344.984,-1);次の情報が返されます。
+-------------------+ | round(344.984,-1) | +-------------------+ | 340.000 | +-------------------+次のサンプル文は、小数点の左に小数点以下4桁の345.984を丸めます。
SELECT round(345.984,-4);次の情報が返されます。
+-------------------+ | round(345.984,-4) | +-------------------+ | 0.000 | +-------------------+
SIGN
sign(x)説明: この関数は、
xの符号を示す値を返します。xが0より大きい場合、1が返されます。xが0に等しい場合、0が返されます。xが0未満の場合、-1が返されます。
入力値のデータ型: TINYINT、SMALLINT、INT、BIGINT、DOUBLE、FLOAT、またはDECIMAL。
戻り値のデータ型: BIGINT。
例:
SELECT sign(12);次の情報が返されます。
+----------+ | sign(12) | +----------+ | 1 | +----------+SELECT sign(-4.5);次の情報が返されます。
+------------+ | sign(-4.5) | +------------+ | -1 | +------------+
SIN
sin(x) 説明: この関数は
xの正弦を返します。入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT sin(1.234);次の情報が返されます。
+--------------------+ | sin(1.234) | +--------------------+ | 0.9438182093746337 | +--------------------+
SQRT
sqrt(x)説明: この関数は
xの平方根を返します。入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT sqrt(4.222);次の情報が返されます。
+-------------------+ | sqrt(4.222) | +-------------------+ | 2.054750593137766 | +-------------------+
TAN
tan(x) 説明: この関数は、
xのタンジェントを返します。入力値のデータ型: DOUBLE。
戻り値のデータ型: DOUBLE。
例:
SELECT tan(8);次の情報が返されます。
+--------------------+ | tan(8) | +--------------------+ | -6.799711455220379 | +--------------------+