10bet网址
mysql 5.6リファレンスマニュアル
下载本手册

12.6.2数学相关

表12.12数学相关

名前 说明
ABS() 绝対値を返します
这些“可信赖医疗组织”() アークコサインを返します
正如() アークサインを返します
晒黑() アークタンジェントを返します
atan2()晒黑() 2つの引数のアークををます
CEIL() 引数以上のもっとも小さなさな値値を返し
天花板() 引数以上のもっとも小さなさな値値を返し
CONV() 数量を异なる基数で変换し
因为() コサインを返します
床() コタンジェントを返します
CRC32() 巡回巡回冗长検查値をを计算し
度() ラジアンラジアンを角度にに変换し
Exp() 累乘します
地面() 引数以下のもっとも大厦値値を返します
ln() 引数の自然対を返します
日志() 最初最初引数の自然然ををます
LOG10 () 引数の底10のの数を返します
log2() 引数の底2のの数を返します
mod() 余りを返します
pi() piの値を返します
POW() 指定指定たた数で累乘れれたたををますます
力量() 指定指定たた数で累乘れれたたををますます
弧度() ラジアンに変換された引数を返します
兰德() ランダムな驾驶小数点値を返します
圆的() 引数を丸めます
符号() 引数の号を返します
罪() 引数のサインを返します
sqrt() 引数の平方英を返します
Tan() 引数のタンジェントを返します
截短() 指定された小数点以ののににてます

すべての数学関数は,エラーの発生時に空值を返します。

  • ABS(X

    Xの絶対値を返します。

    mysql>选择abs(2);- > 2 mysql>选择abs(-32);- > 32.

    この关节,big値でも安防にますます。

  • ACOS(X

    Xののアークコ(つまり,コサインがXである値)を返します。X-1から1までまでの范囲内内ににないない场は,空值を返します。

    MySQL>选择ACOS(1);- > 0 mysql>选择ACOS(1.0001);- > null mysql>选择ACOS(0);- > 1.5707963267949
  • Asin(X

    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のアークタンジェント(つまり,タンジェントがXである値)を返します。

    MySQL>选择atan(2);- > 1.1071487177941 mysql>选择atan(-2);- > -1.1071487177941
  • 晒黑(yXatan2(yX

    2つの変数Xおよびyこれアークタンジェントを返します。これは,両方针引数の符が结果の象象のに使使さ点点をを除いてy/Xののアークタンジェントのの计算と同様同様

    mysql>选择atan(-2,2);- > -0.78539816339745 mysql>选择atan2(pi(),0);- > 1.5707963267949
  • CEIL(X

    CEIL()天花板()ののです。

  • 天花板(X

    X以上で最小のの値返します。

    MySQL>选择天花板(1.23);- > 2 mysql>选择天花板(-1.23);- > -1

    结合は,戻り値の型厳密厳密になります厳密にがなりまたは浮。

  • 译文(Nfrom_base.to_base.

    基数,数量を异なる基数で変换し。基数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”
  • COS (X

    Xのコサインを返します。Xはラジアンで指定さますます。

    mysql> select cos(pi());- > -1
  • 床(X

    Xのコタンジェントを返します。

    MySQL>选择COT(12);- > -1.5726734063977 mysql>选择cot(0);- > null.
  • CRC32(expr.

    巡回冗长検查値を计算し,32ビット値の符符なし値返します。参数が空值である结合は,结果も空值になります。引数は文字列ととされ,(可能な合)文章列列结合でも字列列としてでされますれますれれ

    mysql>选择crc32('mysql');- > 3259397556 mysql>选择crc32('mysql');- > 2501908538.
  • 度(X

    ラジアンラジアンからディグリーにに変换されたXを返します。

    mysql>选择度(pi());- > 180 mysql>选择度(pi()/ 2);- > 90
  • Exp(X

    E.(自然対数の底)のX乘乘値を返します。この关键词は,(第一个のののみのみ使用する)日志()またはln()です。

    MySQL> Select Exp(2);- > 7.3890560989307 MySQL> Select Exp(-2);- > 0.13533528323661 MySQL> Select Exp(0);- > 1
  • 地面(X

    X以以で最大の値を返します。

    MySQL>选择地板(1.23);- > 1 mysql>选择楼层(-1.23);- > -2

    结合は,戻り値の型厳密厳密になります厳密にがなりまたは浮。

  • 格式(XD.

    数号X'#,###,###。##'のような书架に変换し,小数第D.位位に丸め,その结果を文字列返します。详细详细,「12.5「文文」」を参照してください。

  • 十六进制(n_or_s)

    详细は,10次,10次,10°,「12.5「文文」」で,この关键の明を参照しください。

  • ln(X

    Xの自然阶数(つまり,Xの底E.の驰数量)ををます。Xが0以下である場合は,空值が返されます。

    mysql>选择ln(2);- > 0.69314718055995 mysql>选择ln(-2);- > null.

    この关键词日志(Xののシノニム。この关圈のは,Exp()关节。

  • 日志(X日志(B.X

    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.ととです。

  • log2(X

    Xのの2のの数を返します。

    mysql>选择log2(65536);- > 16 mysql> select log2(-100);- > null.

    log2()は,格納に必要なビット数を調べる際に役立ちます。この関数は式日志(X/ / log(2)ととです。

  • log10(X

    Xの底10ののををます。

    mysql>选择log10(2);- > 0.30102999566398 mysql>选择log10(100);- > 2 mysql>选择log10(-100);- > null.

    log10(X日志(10,Xととです。

  • mod(NmNmN摩擦m

    モジュロ演算。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()

    π(pi)の値を返します。表示されるデフォルトの小数点以のの桁は7ですが,mysqlでは内部全倍精密値が使用さされ。

    mysql >选择π();-> 3.141593 mysql> SELECT PI()+0.000000000000000000;- > 3.141592653589793116
  • 战俘(Xy

    Xy乘の値を返します。

    mysql>选择pow(2,2);- > 4 mysql>选择pow(2,-2);- > 0.25
  • 力量(Xy

    これはPOW()ののです。

  • 弧度(X

    ディグリーディグリーからラジアンにに変换されたXを返します。

    注记

    Πラジアンラジアン,180ディグリーと同等。

    mysql>选择弧度(90);- > 1.5707963267949
  • 兰德()兰德(N

    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 * FROMtbl_name.兰特()订购;

    限制と结合わせて按兰德()订购を使用すれば,行のセットからランダムなサンプルを選択する際に役立ちます。

    MySQL>从表1中选择*,表2其中A = B和C  ORDER按RAND()限制1000;

    兰德()は,完全なランダムジェネレータとしてはされていませません要求応じてランダムななを生成するするであり,同じmysqlバージョンのプラットフォーム间でで可爱。

    この关节,ステートメントステートメントベースのレプリケーションで全全にに使ませませませませませませませませませませませませbinlog_format陈述にに设定されているとき,この关键ををする,警告のログが记录され。(bug#49222)

  • 圆形的(X圆形的(XD.

    XD.小数にに丸め丸め丸めアルゴリズムは,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

    Xが负,ゼロ,または正のいずれのかにて,引数の符を-10.,または1として返します。

    MySQL>选择符号(-32);- > -1 mysql>选择符号(0);- > 0 mysql>选择标志(234);- > 1
  • 罪(X

    Xのサインを返します。Xはラジアンで指定さますます。

    mysql>选择sin(pi());- > 1.2246063538224E-16 MySQL>选择圆形(SIN(PI()));- > 0.
  • X

    负ではない数码Xの平方根を返します。

    MySQL>选择SQRT(4);- > 2 MySQL>选择SQRT(20);- > 4.4721359549996 MySQL>选择SQRT(-16);- > null.
  • 棕褐色(X

    Xのタンジェントを返します。Xはラジアンで指定さますます。

    mysql>选择tan(pi());- > -1.2246063538224E-16 mysql>选择tan(pi()+ 1);- > 1.5574077246549
  • 截短(XD.

    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.

    すべてすべて数量は,ゼロ方向に丸められ。