表12.12数学相关
名前 | 说明 |
---|---|
ABS() |
绝対値を返します |
这些“可信赖医疗组织”() |
アークコサインを返します |
正如() |
アークサインを返します |
晒黑() |
アークタンジェントを返します |
atan2() 那晒黑() |
2つの引数のアークををます |
CEIL() |
引数以上のもっとも小さなさな値値を返し |
天花板() |
引数以上のもっとも小さなさな値値を返し |
CONV() |
数量を异なる基数で変换し |
因为() |
コサインを返します |
床() |
コタンジェントを返します |
CRC32() |
巡回巡回冗长検查値をを计算し |
度() |
ラジアンラジアンを角度にに変换し |
Exp() |
累乘します |
地面() |
引数以下のもっとも大厦値値を返します |
ln() |
引数の自然対を返します |
日志() |
最初最初引数の自然然ををます |
LOG10 () |
引数の底10のの数を返します |
log2() |
引数の底2のの数を返します |
mod() |
余りを返します |
pi() |
piの値を返します |
POW() |
指定指定たた数で累乘れれたたををますます |
力量() |
指定指定たた数で累乘れれたたををますます |
弧度() |
ラジアンに変換された引数を返します |
兰德() |
ランダムな驾驶小数点値を返します |
圆的() |
引数を丸めます |
符号() |
引数の号を返します |
罪() |
引数のサインを返します |
sqrt() |
引数の平方英を返します |
Tan() |
引数のタンジェントを返します |
截短() |
指定された小数点以ののににてます |
すべての数学関数は,エラーの発生時に空值
を返します。
X
の絶対値を返します。mysql>选择abs(2);- > 2 mysql>选择abs(-32);- > 32.
この关节,
big
値でも安防にますます。X
ののアークコ(つまり,コサインがX
である値)を返します。X
が-1
から1
までまでの范囲内内ににないない场は,空值
を返します。MySQL>选择ACOS(1);- > 0 mysql>选择ACOS(1.0001);- > null mysql>选择ACOS(0);- > 1.5707963267949
X
のアークサイン(つまり,サインがX
である値)を返します。X
が-1
から1
までまでの范囲内内ににないない场は,空值
を返します。MySQL>选择ASIN(0.2);- > 0.20135792079033 mysql>选择Asin('foo');+ ------------- + |Asin('foo')|+ ------------- + |0 |+ -------------- + 1行,1条警告(0.00秒)MySQL> Show Warnings;+ --------- + ------ + ------------------------------------------------- + |水平|代码| Message | +---------+------+-----------------------------------------+ | Warning | 1292 | Truncated incorrect DOUBLE value: 'foo' | +---------+------+-----------------------------------------+
X
のアークタンジェント(つまり,タンジェントがX
である値)を返します。MySQL>选择atan(2);- > 1.1071487177941 mysql>选择atan(-2);- > -1.1071487177941
2つの変数
X
およびy
これアークタンジェントを返します。これは,両方针引数の符が结果の象象のに使使さ点点をを除いて
ののアークタンジェントのの计算と同様同様y
/X
mysql>选择atan(-2,2);- > -0.78539816339745 mysql>选择atan2(pi(),0);- > 1.5707963267949
CEIL()
は天花板()
ののです。X
以上で最小のの値返します。MySQL>选择天花板(1.23);- > 2 mysql>选择天花板(-1.23);- > -1
结合は,戻り値の型厳密厳密になります厳密にがなりまたは浮。
基数,数量を异なる基数で変换し。基数
from_base.
から基数to_base.
に変换された数据N
の文字列表现を返します返しののいずれかが空值
である場合は,空值
を返します。参数N
最小の基数はははががますが,整数または。2
で,最大の基数は36.
です。to_base.
が负の数码であるである合并,N
はは号付きの数码とみなされます。并列N
は符号なしととれます。CONV()
64年はビット精度で動作します。mysql >选择CONV (' a ', 16日2);-> '1010' mysql> SELECT CONV('6E',18,8);-> '172' mysql> SELECT CONV(-17,10,-18);- > - h的mysql >选择CONV(10 + 10”+“10”+ 0 xa, 10、10);——>“40”
X
のコサインを返します。X
はラジアンで指定さますます。mysql> select cos(pi());- > -1
X
のコタンジェントを返します。MySQL>选择COT(12);- > -1.5726734063977 mysql>选择cot(0);- > null.
巡回冗长検查値を计算し,32ビット値の符符なし値返します。参数が
空值
である结合は,结果も空值
になります。引数は文字列ととされ,(可能な合)文章列列结合でも字列列としてでされますれますれれmysql>选择crc32('mysql');- > 3259397556 mysql>选择crc32('mysql');- > 2501908538.
ラジアンラジアンからディグリーにに変换された
X
を返します。mysql>选择度(pi());- > 180 mysql>选择度(pi()/ 2);- > 90
E.(自然対数の底)の
X
乘乘値を返します。この关键词は,(第一个のののみのみ使用する)日志()
またはln()
です。MySQL> Select Exp(2);- > 7.3890560989307 MySQL> Select Exp(-2);- > 0.13533528323661 MySQL> Select Exp(0);- > 1
X
以以で最大の値を返します。MySQL>选择地板(1.23);- > 1 mysql>选择楼层(-1.23);- > -2
结合は,戻り値の型厳密厳密になります厳密にがなりまたは浮。
格式(
X
那D.
)数号
X
を'#,###,###。##'
のような书架に変换し,小数第D.
位位に丸め,その结果を文字列返します。详细详细,「12.5「文文」」を参照してください。详细は,10次,10次,10°,「12.5「文文」」で,この关键の明を参照しください。
X
の自然阶数(つまり, の驰数量)ををます。X
の底E.X
が0以下である場合は,空值
が返されます。mysql>选择ln(2);- > 0.69314718055995 mysql>选择ln(-2);- > null.
この关键词
日志(
ののシノニム。この关圈のは,X
)Exp()
关节。1つのパラメータで呼び出さ呼び出される合,この关圈
X
の自然然ををます。X
が0以下である場合は,空值
が返されます。この关节(単一の销量で呼び出された场合),
Exp()
关节。mysql>选择log(2);- > 0.69314718055995 mysql>选择log(-2);- > null.
この关节二が2つのパラメータで呼び出されるれる合并,
B.
を底とするX
のの数が返されます。X
が0以下である场合,またはB.
が1以下であるである合,空值
が返されます。mysql >选择日志(65536);-> 16 mysql> SELECT LOG(10,100);-> 2 mysql> SELECT LOG(1100);- > null.
日志(
はB.
那X
)日志(
ととです。X
) / 日志(B.
)
のの2のの数を返します。X
mysql>选择log2(65536);- > 16 mysql> select log2(-100);- > null.
log2()
は,格納に必要なビット数を調べる際に役立ちます。この関数は式日志(
ととです。X
/ / log(2)X
の底10ののををます。mysql>选择log10(2);- > 0.30102999566398 mysql>选择log10(100);- > 2 mysql>选择log10(-100);- > null.
log10(
はX
)日志(10,
ととです。X
)モジュロ演算。
m
で除算されたN
の余りを返します。mysql> SELECT MOD(234,10);-> 4 mysql> SELECT 253% 7;-> 1 mysql> SELECT MOD(29,9);-> 2 mysql> SELECT 29 MOD 9- > 2
この关节,
big
値でも安防にますます。mod()
は,小数部部を持つでも机し,除算后の正式な余りをます。mysql>选择mod(34.5,3);- > 1.5
mod(
はN
,0)空值
を返します。π(pi)の値を返します。表示されるデフォルトの小数点以のの桁は7ですが,mysqlでは内部全倍精密値が使用さされ。
mysql >选择π();-> 3.141593 mysql> SELECT PI()+0.000000000000000000;- > 3.141592653589793116
X
のy
乘の値を返します。mysql>选择pow(2,2);- > 4 mysql>选择pow(2,-2);- > 0.25
これは
POW()
ののです。ディグリーディグリーからラジアンにに変换された
X
を返します。注记Πラジアンラジアン,180ディグリーと同等。
mysql>选择弧度(90);- > 1.5707963267949
0.
< =V.
<1.0
の范囲内内,ランダムランダム移动小数点値V.
ををます。幂数次数N
が指定さているいる,カラム値の反复可なを生成するシード値ささます。兰特(3)
。mysql>创建表t(i int);查询OK,0行受影响(0.42秒)MySQL>插入到T值(1),(2),(3);查询确定,3行受影响(0.00秒)记录:3重复:0警告:0 MySQL>选择I,Rand()来自T;+ ------ + ------------------ + |我|兰德()|+ ------ + ------------------ + |1 |0.61914388706828 || 2 | 0.93845168309142 | | 3 | 0.83482678498591 | +------+------------------+ 3 rows in set (0.00 sec) mysql> SELECT i, RAND(3) FROM t; +------+------------------+ | i | RAND(3) | +------+------------------+ | 1 | 0.90576975597606 | | 2 | 0.37307905813035 | | 3 | 0.14808605345719 | +------+------------------+ 3 rows in set (0.00 sec) mysql> SELECT i, RAND() FROM t; +------+------------------+ | i | RAND() | +------+------------------+ | 1 | 0.35877890638893 | | 2 | 0.28941420772058 | | 3 | 0.37073435016976 | +------+------------------+ 3 rows in set (0.00 sec) mysql> SELECT i, RAND(3) FROM t; +------+------------------+ | i | RAND(3) | +------+------------------+ | 1 | 0.90576975597606 | | 2 | 0.37307905813035 | | 3 | 0.14808605345719 | +------+------------------+ 3 rows in set (0.01 sec)
定,シードは実行さ前,ステートメントシードコンパイル时に一に引引としてイニシャライザますますされイニシャライザ。
兰德()
が起ささたびに,そのそのででががますます。(分数値が等しい场は,兰德()
でで毎回同じ値値が返されることを示していい。)一世
< =R.
<j
のの范囲内ででランダムななR.
をを取得するに,式地面(
-一世
+ rand()*(j
たとえば,一世
)))7.
< =R.
<12.
の范囲内でランダムなをするに,次のようなステートメントを使用しし。选择地板(7 +(兰特()* 5));
在哪里
句内の兰德()
は,在哪里
が実行されるたびに再评価されます。订购
ではカラムが複数回評価されるため,订购
句内では兰德()
値,次次のようにランダムなでを取得できでき顺序でをませ取得できで行を取得できmysql> SELECT * FROM
tbl_name. 兰特()订购;限制
と结合わせて按兰德()订购
を使用すれば,行のセットからランダムなサンプルを選択する際に役立ちます。MySQL>从表1中选择*,表2其中A = B和C
ORDER按RAND()限制1000; 兰德()
は,完全なランダムジェネレータとしてはされていませません要求応じてランダムななを生成するするであり,同じmysqlバージョンのプラットフォーム间でで可爱。この关节,ステートメントステートメントベースのレプリケーションで全全にに使ませませませませませませませませませませませませ
binlog_format
が陈述
にに设定されているとき,この关键ををする,警告のログが记录され。(bug#49222)引
X
をD.
小数にに丸め丸め丸めアルゴリズムは,X
のデータ型に依存ますます。D.
が指定されていない合,デフォルトで0に设定さます。D.
を負の数に指定すると,値X
の小数点左側のD.
桁をゼロにするますます。MySQL>选择圆形(-1.23);- > -1 mysql>选择圆形(-1.58);- > -2 mysql>选择圆形(1.58);- > 2 mysql>选择圆形(1.298,1);- > 1.3 mysql>选择圆形(1.298,0);- > 1 mysql>选择圆形(23.298,-1);- > 20.
戻り型は,(整数,重复,または10进とすると)1。つまり,函数ががのの,结果ががののは,结果结果函数(小数なし)にになり。
MySQL>选择圆形(150.000,2),圆形(150,2);+ ----------------------------- + |圆形(150.000,2)|圆形(150,2)|+ ----------------------------- + |150.00 |150 |+ ----------------- + -------------- +
圆的()
では,第1次数ののに応じて次ののが使使れれれれれれ真値真値数码の合成,
圆的()
では「四舍五入」または「切り捨て(切り上げ)」ルールルール使使ますます.0.5以上の小数部を持つは,正ののはられのににられ,负の场はられのに切り切りげられられににられられられげににににられられ。)0.5近似近似の数码のの合书,结果はcライブラリによって异なり。多くのシステムは,これは,
圆的()
「」「」ルールが使使ことをししししははは近い近いの持つははられ。
次の例は,正确なな値の丸めと近似の丸め丸めの示し示し示し示し示し示し
MySQL>选择圆形(2.5),圆形(25E-1);+ ------------ + -------------- + |圆形(2.5)|圆形(25E-1)|+ ------------ + -------------- + |3 |2 |+ ------------ + -------------- +
詳細は,「12.20」「高精度」を参照してください。
X
が负,ゼロ,または正のいずれのかにて,引数の符を-1
那0.
,または1
として返します。MySQL>选择符号(-32);- > -1 mysql>选择符号(0);- > 0 mysql>选择标志(234);- > 1
X
のサインを返します。X
はラジアンで指定さますます。mysql>选择sin(pi());- > 1.2246063538224E-16 MySQL>选择圆形(SIN(PI()));- > 0.
负ではない数码
X
の平方根を返します。MySQL>选择SQRT(4);- > 2 MySQL>选择SQRT(20);- > 4.4721359549996 MySQL>选择SQRT(-16);- > null.
X
のタンジェントを返します。X
はラジアンで指定さますます。mysql>选择tan(pi());- > -1.2246063538224E-16 mysql>选择tan(pi()+ 1);- > 1.5574077246549
D.
小数点点に切り舍て,数据X
を返します。D.
が0.
の结合は,结果に小数点または小数部がれません。D.
を負の数に指定すると,値X
の小数点左側のD.
桁をゼロにするますます。mysql>选择截断(1.223,1);- > 1.2 mysql>选择截断(1.999,1);- > 1.9 mysql>选择截断(1.999,0);- > 1 mysql>选择truncate(-1.999,1);- > -1.9 mysql> Select Truncate(122,-2);- > 100 mysql>选择截断(10.28 * 100,0);- > 1028.
すべてすべて数量は,ゼロ方向に丸められ。