国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

MYSQL數(shù)字函數(shù):不可不知的數(shù)據(jù)處理利器

這篇具有很好參考價(jià)值的文章主要介紹了MYSQL數(shù)字函數(shù):不可不知的數(shù)據(jù)處理利器。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

MYSQL數(shù)字函數(shù):不可不知的數(shù)據(jù)處理利器,MYSQL應(yīng)用,數(shù)據(jù)庫,MYSQL,MYSQL函數(shù),MYSQL數(shù)字函數(shù),MYSQL高級(jí)函數(shù),MYSQL高級(jí)應(yīng)用,程序人生

???個(gè)人主頁:danci_
???系列專欄:《MYSQL應(yīng)用》
?????制定明確可量化的目標(biāo),堅(jiān)持默默的做事。


MYSQL數(shù)字函數(shù):不可不知的數(shù)據(jù)處理利器

? ? ? ?

? ? ? ?在軟件開發(fā)中,MySQL數(shù)字函數(shù)扮演著至關(guān)重要的角色,它們能夠幫助我們快速地對(duì)數(shù)據(jù)進(jìn)行數(shù)學(xué)運(yùn)算、轉(zhuǎn)換和處理。下面,我將介紹幾個(gè)非常常用的MySQL數(shù)字函數(shù),并舉例說明它們?cè)谲浖_發(fā)中的巧妙運(yùn)用場(chǎng)景,同時(shí)探討這些函數(shù)的迭代性、優(yōu)缺點(diǎn)以及使用時(shí)需要注意的問題。

? ? ? ??

一、使用數(shù)字函數(shù)的優(yōu)缺點(diǎn)

? ? ? ??

?優(yōu)點(diǎn):

? ? ? ??

1. 簡(jiǎn)化計(jì)算過程:數(shù)字函數(shù)能夠直接對(duì)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行數(shù)學(xué)運(yùn)算,無需在應(yīng)用程序中進(jìn)行復(fù)雜的計(jì)算。

2. 提高數(shù)據(jù)準(zhǔn)確性:數(shù)字函數(shù)通常經(jīng)過優(yōu)化和測(cè)試,能夠確保計(jì)算結(jié)果的準(zhǔn)確性。

3. 提高性能:相比于在應(yīng)用程序中進(jìn)行計(jì)算,直接在數(shù)據(jù)庫中使用數(shù)字函數(shù)通常能夠更快地得到結(jié)果。

? ? ? ??

?缺點(diǎn):

? ? ? ? ? ?

1. 學(xué)習(xí)成本:對(duì)于初學(xué)者來說,可能需要花費(fèi)一定的時(shí)間來學(xué)習(xí)和掌握這些函數(shù)的用法。

2. 靈活性受限:數(shù)字函數(shù)的功能相對(duì)固定,可能無法滿足一些復(fù)雜的計(jì)算需求。在這種情況下,可能需要結(jié)合其他SQL語句或應(yīng)用程序代碼來實(shí)現(xiàn)。

? ? ? ??

二、使用數(shù)字函數(shù)時(shí)需要注意

? ? ? ??

1. 數(shù)據(jù)類型:確保傳遞給數(shù)字函數(shù)的參數(shù)是正確的數(shù)據(jù)類型,否則可能會(huì)導(dǎo)致計(jì)算錯(cuò)誤或異常。

2. 空值處理:當(dāng)數(shù)據(jù)中存在NULL值時(shí),需要注意數(shù)字函數(shù)對(duì)NULL值的處理方式。有些函數(shù)可能返回NULL作為結(jié)果,而有些函數(shù)則可能忽略NULL值進(jìn)行計(jì)算。

3. 性能優(yōu)化:雖然數(shù)字函數(shù)通常能夠提高性能,但在某些情況下,過度使用或不當(dāng)使用這些函數(shù)可能會(huì)導(dǎo)致性能下降。因此,在使用數(shù)字函數(shù)時(shí),需要注意其對(duì)性能的影響,并進(jìn)行適當(dāng)?shù)膬?yōu)化。

4. 測(cè)試與驗(yàn)證:在將數(shù)字函數(shù)應(yīng)用于實(shí)際業(yè)務(wù)場(chǎng)景之前,需要進(jìn)行充分的測(cè)試和驗(yàn)證,以確保其正確性和可靠性。

? ? ? ??

? ? ? ??MySQL的數(shù)字函數(shù)在軟件開發(fā)中具有重要的應(yīng)用價(jià)值。通過巧妙運(yùn)用這些函數(shù),我們可以更加高效地處理數(shù)據(jù)、簡(jiǎn)化計(jì)算過程并提高數(shù)據(jù)準(zhǔn)確性。同時(shí),在使用這些函數(shù)時(shí),我們也需要注意其數(shù)據(jù)類型、空值處理、性能優(yōu)化以及測(cè)試驗(yàn)證等方面的問題,以確保其正確性和可靠性。

? ? ? ??

三、數(shù)字函數(shù)說明

? ? ? ??

3.1、SIGN 取數(shù)字的符號(hào)

MySQL?SIGN()?函數(shù)返回指定的數(shù)字的符號(hào)。參數(shù)為正數(shù)、負(fù)數(shù)和零時(shí)分別返回?1,?-1?和?0

語法:

SIGN(number)

參數(shù)說明:

  • number:必需的。 一個(gè)數(shù)字。

返回值:

  • ?返回值為?1,?-1,0?和?NULL?中的一個(gè):
    • 如果?number?大于?0,SIGN()?函數(shù)將會(huì)返回?1
    • 如果?number?等于?0,SIGN()?函數(shù)將會(huì)返回?0。
    • 如果?number?小于?0SIGN()?函數(shù)將會(huì)返回?-1。
    • 如果?number?為?NULLSIGN()?函數(shù)將會(huì)返回?NULL。

示例:

SELECT
    SIGN(123),	                        -- 1
    SIGN(123.123),	                    -- 1
    SIGN(-123),	                        -- -1
    SIGN(-123.123),	                    -- -1
    SIGN(0),	                        -- 0
    SIGN(NULL)	                        -- NULL

3.2、ABS 取絕對(duì)值

MySQL?ABS()?函數(shù)返回指定數(shù)字的絕對(duì)值。

語法:

ABS(number)

參數(shù)說明:

  • number必需的。 一個(gè)用于計(jì)算絕對(duì)值的數(shù)字。

返回值:

  • 返回?cái)?shù)字的絕對(duì)(正)值。
  • 如果參數(shù)?number?為字符串,ABS()?將按照如下規(guī)則嘗試轉(zhuǎn)為數(shù)字:
    • 如果以數(shù)字開頭,則將開頭的數(shù)字部分轉(zhuǎn)為數(shù)字。
    • 如果不能轉(zhuǎn)為數(shù)字,則按照?0?處理。
  • 返回?NULL情況:number?為?NULL。

示例:

SELECT
    ABS(100),		    -- 100
    ABS(-100),          -- 100
    ABS('100'),         -- 100
    ABS('-100'),        -- 100
    ABS('-100A')        -- 100
    ABS('A100'),        -- 0
    ABS(NULL)           -- null

3.3、COS 取余弦值

MySQL?COS()?函數(shù)返回指定數(shù)值的余弦值。

語法:

COS(number)

參數(shù)說明:

  • number:必需的。 一個(gè)用于計(jì)算余弦值的數(shù)值。

返回值:

  • 指定數(shù)值的余弦值。
  • 返回?NULL情況:number?為?NULL。

示例:

SELECT
    COS(2.5),	     -- -0.8011436155469337
    COS(0.2),	     -- 0.9800665778412416
    COS(-0.5),       -- 0.8775825618903728
    COS(-0.2),	     -- 0.9800665778412416
    COS(0),          -- 1
    COS(PI()),       -- -1
    COS(NULL)        -- NULL

3.4、ACOS 取反余弦值

MySQL?ACOS()?函數(shù)返回指定數(shù)值的反余弦值。

語法:

ACOS(number)

參數(shù)說明:

  • number:必需的。 一個(gè)用于計(jì)算反余弦值的數(shù)值。

返回值:

  • 返回指定數(shù)值的反余弦值。
  • 返回?NULL情況:
    • number?不在?-1?到?1?之間。
    • number?為?NULL。

示例:

SELECT
    ACOS(0.5),	    -- 1.0471975511965976
    ACOS(0.2),	    -- 1.3694384060045657
    ACOS(-0.5),	    -- 2.0943951023931957
    ACOS(-0.2),	    -- 1.7721542475852274
    ACOS(1),		-- 0
    ACOS(0),		-- 1.5707963267948966
    ACOS(-1),		-- 3.141592653589793
    ACOS(2),		-- NULL
    ACOS(-2),		-- NULL
    ACOS(NULL)	    -- NULL

3.5、SIN 取正弦值

MySQL?SIN()?函數(shù)返回指定數(shù)值的正弦值。

語法:

SIN(number)

參數(shù)說明:

  • number:必需的。 一個(gè)用于計(jì)算正弦值的數(shù)值。

返回值:

  • 指定數(shù)值的正弦值。
  • 返回?NULL情況:number?為?NULL。

示例:

SELECT
    SIN(2.5),	    -- 0.5984721441039564
    SIN(0.2),	    -- 0.19866933079506122
    SIN(-0.5),      -- -0.479425538604203
    SIN(0),         -- 0
    SIN(PI()),      -- 1.2246467991473532e-16
    SIN(NULL)       -- NULL

3.6、ASIN 取反正弦值

MySQL?ASIN()?函數(shù)返回指定數(shù)值的反正弦值。

語法:

ASIN(number)

參數(shù)說明:

  • number:必需的。 一個(gè)用于計(jì)算反正弦值的數(shù)值。

返回值:

  • 指定數(shù)值的反正弦值。
  • 返回?NULL情況:
    • number?不在?-1?到?1?之間。
    • number?為?NULL。

示例:

SELECT
    ASIN(0.5),	    -- 0.5235987755982988
    ASIN(-0.5),	    -- -0.5235987755982988
    ASIN(1),		-- 1.5707963267948966
    ASIN(0),		-- 0
    ASIN(-1),	    -- -1.5707963267948966
    ASIN(2),	    -- NULL
    ASIN(NULL)	    -- NULL

3.7、TAN 取正切值

MySQL?TAN()?函數(shù)返回指定數(shù)值的正切值。

語法:

TAN(number)

參數(shù)說明:

  • number:必需的。 一個(gè)用于計(jì)算正切值的數(shù)值。

返回值:

  • 指定數(shù)值的正切值。
  • 返回?NULL情況:number?為?NULL。

示例:

SELECT
    TAN(2.5),		-- -0.7470222972386602
    TAN(0.2),		-- 0.20271003550867248
    TAN(-0.5),	    -- -0.5463024898437905
    TAN(0),		    -- 0
    TAN(PI()),	    -- -1.2246467991473532e-16
    TAN(NULL)		-- NULL

3.8、ATAN 取反正切值

MySQL?ATAN()?函數(shù)返回指定數(shù)值的反正切值。

語法:

ATAN(number)
ATAN(x, y)

參數(shù)說明:

  • number:必需的。 一個(gè)用于計(jì)算反正切值的數(shù)值。
  • x, y:必需的。 一個(gè)用于計(jì)算反正切值的兩個(gè)數(shù)值。x?和?y?的符號(hào)用于確定結(jié)果的象限。

返回值:

  • 指定數(shù)值的反正切值。
  • 返回?NULL情況:number?為?NULL。

示例:

SELECT
    ATAN(2.5),		-- 1.1902899496825317
    ATAN(0.2),		-- 0.19739555984988078
    ATAN(-0.5),	    -- -0.46364760900080615
    ATAN(-0.9, 2),	-- -0.4228539261329407
    ATAN(PI(), 2),	-- 1.0038848218538872
    ATAN(NULL)		-- NULL

3.9、ATAN2 取反正切值

MySQL?ATAN2()?函數(shù)返回指定數(shù)值的反正切值。

語法:

ATAN2(x, y)

參數(shù)說明:

  • x, y:必需的。 一個(gè)用于計(jì)算反正切值的兩個(gè)數(shù)值。x?和?y?的符號(hào)用于確定結(jié)果的象限。

返回值:

  • 指定數(shù)值的反正切值。
  • 返回?NULL情況:任一參數(shù)為?NULL。

示例:

SELECT
    ATAN2(2.5, 1),	    -- 1.1902899496825317
    ATAN2(0.75, 1),	    -- 0.6435011087932844
    ATAN2(-0.9, 2),	    -- -0.4228539261329407
    ATAN2(PI(), 2),	    -- 1.0038848218538872
    ATAN2(NULL)		    -- NULL

3.10、?COT 取余切值

MySQL?COT()?函數(shù)返回指定數(shù)值的余切值。

語法:

COT(number)

參數(shù)說明:

  • number:必需的。 一個(gè)用于計(jì)算余切值的數(shù)值。

返回值:

  • 指定數(shù)值的余切值。
  • 返回?NULL情況:number?為?NULL。

示例:

SELECT
    COT(2.5),	    -- -1.3386481283041516
    COT(0.2),	    -- 4.933154875586894
    COT(-0.5),	    -- -1.830487721712452
    COT(PI()),	    -- -8.165619676597685e15
    COT(NULL)		-- NULL

3.11、CEIL 向上取整

MySQL?CEIL()?函數(shù)返回大于或等于指定數(shù)字的最小整數(shù)值。CEIL()?函數(shù)等同于 CEILING() 函數(shù)。

語法:

CEIL(number)

參數(shù)說明:

  • number:必需的。 一個(gè)數(shù)字。

返回值:

  • 大于或等于指定數(shù)字的最小整數(shù)值。
  • 返回?NULL情況:number?為?NULL。

示例:

SELECT
    CEIL(123.123),	    -- 124
    CEIL(123),	        -- 123
    CEIL(-123.123),	    -- -123
    CEIL(-123),	        -- -123
    CEIL(-100),	        -- -100
    CEIL(NULL)	        -- NULL

3.12、CEILING 向上取整

MySQL CEILING() 函數(shù)返回大于或等于指定數(shù)字的最小整數(shù)值。CEILING() 函數(shù)等同于 CEIL() 函數(shù)。

語法:

CEILING(number)

參數(shù)說明

  • number:必需的。 一個(gè)數(shù)字。

返回值:

  • 大于或等于指定數(shù)字的最小整數(shù)值。
  • 返回?NULL情況:number?為?NULL。

示例:

SELECT
    CEILING(123.789),	-- 124
    CEILING(123),	-- 123
    CEILING(-123.123),	-- -123
    CEILING(-123),	-- -123
    CEILING(NULL)-- NULL

3.13、FLOOR 向下取整

MySQL?FLOOR()?函數(shù)返回小于或等于指定數(shù)字的最大整數(shù)值。

語法:

FLOOR(number)

參數(shù)說明:

  • number:必需的。 一個(gè)數(shù)字。

返回值:

  • 小于或等于指定數(shù)字的最大整數(shù)值。
  • 返回?NULL情況:number?為?NULL。

示例:

SELECT
    FLOOR(123.123),	    -- 123
    FLOOR(123),	        -- 123
    FLOOR(-123.123),	-- -124
    FLOOR(-123),	    -- -123
    FLOOR(NULL)	        -- NULL

3.14、ROUND 取四舍五入

MySQL?ROUND()?函數(shù)將數(shù)字四舍五入到指定的小數(shù)位數(shù)。

語法:

ROUND(x, d)

參數(shù)說明:

  • x:必需的。 被處理的數(shù)字。
  • d:必需的。 需要保留的小數(shù)位數(shù)。

返回值:

  • 將數(shù)字四舍五入到指定的小數(shù)位數(shù)。
  • 如果?d?大于等于?x?的小數(shù)位數(shù),則返回原數(shù)字。
  • 如果?d?小于?x?的小數(shù)位數(shù),則將?x?的小數(shù)位四舍五入到?d?位后返回。
  • 如果?d?為負(fù)數(shù),ROUND()?函數(shù)將會(huì)從小數(shù)點(diǎn)開始向整數(shù)部分的?d?位數(shù)字替換為?0。
  • 返回?NULL情況:任意一個(gè)參數(shù)為?NULL。

示例:

SELECT
    ROUND(123.179, 1),	    -- 123.2
    ROUND(123.179, 4),	    -- 123.179
    ROUND(123.179, 0),	    -- 123
    ROUND(123.179, -2),	    -- 100
    ROUND(123.179, NULL)	-- NULL

3.15、TRUNCATE?截取小數(shù)位

MySQL?TRUNCATE()?函數(shù)截取數(shù)字為指定的小數(shù)位數(shù)。?TRUNCATE()?函數(shù)只是按指定的位數(shù)截?cái)嘈?shù),而不進(jìn)行四舍五入。

語法:

TRUNCATE(x, d)

參數(shù)說明:

  • x:必需的。 被處理的數(shù)字。
  • d:必需的。 需要保留的小數(shù)位數(shù)。

返回值:

  • 保留了指定小數(shù)位的數(shù)字。
  • 如果?d?大于等于?x?的小數(shù)位數(shù),則返回原數(shù)字。
  • 如果?d?小于?x?的小數(shù)位數(shù),則將?x?的小數(shù)位數(shù)截?cái)酁?d?位后返回。
  • 如果?d?為負(fù)數(shù),TRUNCATE()?函數(shù)將會(huì)從小數(shù)點(diǎn)開始向整數(shù)部分的?d?位數(shù)字替換為?0。
  • 返回?NULL情況:任意一個(gè)參數(shù)為?NULL。

示例:

SELECT
    TRUNCATE(123.179, 1),		-- 123.1
    TRUNCATE(123.179, 4),		-- 123.179
    TRUNCATE(123.179, 0),		-- 123
    TRUNCATE(123.179, -2),	    -- 100
    TRUNCATE(123.179, NULL)	    -- NULL

3.16、CONV?進(jìn)制轉(zhuǎn)為另一個(gè)進(jìn)制

MySQL?CONV()?函數(shù)將數(shù)字從一個(gè)進(jìn)制轉(zhuǎn)為另一個(gè)進(jìn)制,比如從 10 進(jìn)制轉(zhuǎn)為 2 進(jìn)制。

語法:

CONV(num, from_base, to_base)

參數(shù)說明:

  • num:必需的。一個(gè)數(shù)字。
  • from_base:必需的。 數(shù)字當(dāng)前使用的進(jìn)制。從 2 到 36。
  • to_base:必需的。 將數(shù)字轉(zhuǎn)為的進(jìn)制。從 2 到 36。

返回值:

  • 將數(shù)字從一個(gè)進(jìn)制轉(zhuǎn)為另一個(gè)進(jìn)制。
  • 返回?NULL情況:任意一個(gè)參數(shù)為?NULL。

示例:

SELECT 
    CONV('A', 16, 10),		-- 10
    CONV('C', 16, 10),		-- 12
    CONV('E', 16, 10),		-- 14
    CONV('F', 16, NULL)		-- NULL

3.17、DIV 取除法值

在 MySQL 中,?DIV?操作符計(jì)算兩個(gè)整數(shù)的除法并返回一個(gè)整數(shù)結(jié)果。

語法:

x DIV y

參數(shù)說明:

  • x:必需的。 被除數(shù)。
  • y:必需的。 除數(shù)。

返回值:

  • x DIV y?返回?x?除以?y?的結(jié)果的整數(shù)部分。
  • 若參數(shù) x 或者 y 不是整數(shù),則會(huì)先將他們轉(zhuǎn)為 DECIMAL 類型后再計(jì)算。

示例:

SELECT
    10 DIV 3,	    -- 3
    10 / 3,	        -- 3.3333
    FLOOR(10/3),	-- 3
    9.8 DIV 2.6,	-- 3
    9.8 / 2.6,	    -- 3.76923
    FLOOR(9.8/2.6)	-- 3

3.18、EXP e的指定數(shù)值的次方

MySQL?EXP()?函數(shù)返回自然常數(shù)?e?的指定數(shù)值的次方,例如?EXP(2)?返回結(jié)果是?e2。

語法:

EXP(number)

參數(shù)說明:

  • number:必需的。 次方值。

返回值:

  • 自然常數(shù)?e?的指定數(shù)值的次方。
  • 返回?NULL情況:number?為?NULL。

示例:

SELECT
    EXP(0),		    -- 1
    EXP(2),		    -- 7.38905609893065
    EXP(-1),		-- 0.36787944117144233
    EXP(NULL)	    -- NULL

3.19、GREATEST 取列表的最大值

MySQL?GREATEST()?函數(shù)返回參數(shù)列表中的最大值。

語法:

GREATEST(param1, param2, ..., paramN)

參數(shù)說明:

  • param1, param2, ..., paramN:必需的。用于比較的參數(shù)列表。所有的參數(shù)都參與比較。參數(shù)可以是任意的數(shù)據(jù)類型,或者表達(dá)式。

返回值:

  • 參數(shù)列表中的最大值。
  • 返回?NULL情況:任意一個(gè)參數(shù)為?NULL。

示例:

SELECT
    GREATEST(2, 1, 5),		        -- 5
    GREATEST(2, 1, 5, '0'),	        -- 5
    GREATEST('a', 'b', 'c'),	    -- c
    GREATEST('Hello', 'World'),	    -- World
    GREATEST('a', 'b', NULL)		-- NULL

3.20、LEAST 取列表的最小值

MySQL?LEAST()?函數(shù)返回參數(shù)列表中的最小值。

語法:

LEAST(param1, param2, ..., paramN)

參數(shù)說明:

  • param1, param2, ..., paramN:必需的。用于比較的參數(shù)列表。所有的參數(shù)都參與比較。參數(shù)可以是任意的數(shù)據(jù)類型,或者表達(dá)式。

返回值:

  • 參數(shù)列表中的最小值。
  • 返回?NULL情況:任意一個(gè)參數(shù)為?NULL。

示例:

SELECT
    LEAST(2, 1, 5),		        -- 1
    LEAST(2, 1, 5, '0'),	    -- 0
    LEAST('a', 'b', 'c'),		-- a
    LEAST('Hello', 'World'),	-- Hello
    LEAST('a', 'b', NULL)	    -- NULL

3.21、LN 取指定數(shù)字的自然對(duì)數(shù)

MySQL?LN()?函數(shù)返回指定數(shù)字的自然對(duì)數(shù)。

語法:

LN(number)

參數(shù)說明:

  • number:必需的。 一個(gè)用于計(jì)算自然對(duì)數(shù)的數(shù)字。該值必須大于?0

返回值:

  • 指定數(shù)字的自然對(duì)數(shù)。
  • 返回?NULL情況:
    • number?小于或等于?0。
    • number?為?NULL。

示例:

SELECT
    LN(1),		-- 0
    LN(2),		-- 0.6931471805599453
    LN(0),      -- NULL
    LN(-1),		-- NULL
    LN(NULL)    -- NULL

3.22、LOG?指定數(shù)字的指定底數(shù)的對(duì)數(shù)

MySQL?LOG()?函數(shù)返回指定數(shù)字的指定底數(shù)的對(duì)數(shù)。

語法:

LOG(number)
LOG(base, number)

參數(shù)說明:

  • number:必需的。 一個(gè)用于計(jì)算對(duì)數(shù)的數(shù)字。該值必須大于?0
  • base:可選參數(shù)。 底數(shù)。該值必須大于?1。

返回值:

  • 指定數(shù)字的指定底數(shù)的對(duì)數(shù)。
  • 返回?NULL情況:
    • number?小于或等于?0。
    • base?小于或等于?1。
    • 任意一個(gè)參數(shù)為?NULL。

示例:

SELECT
    LOG(1),		        -- 0
    LOG(EXP(1), 2),	    -- 0.6931471805599453
    LOG(10, 100),	    -- 2
    LOG(-1),		    -- NULL
    LOG(1, 10),	        -- NULL
    LOG(NULL)	        -- NULL

3.23、LOG10 指定數(shù)字的以 10 為底的對(duì)數(shù)

MySQL?LOG10()?函數(shù)返回指定數(shù)字的以 10 為底的對(duì)數(shù)。等同于 LOG(10, number) 函數(shù)。

3.24、LOG2?指定數(shù)字的以 2?為底的對(duì)數(shù)

MySQL?LOG2()?函數(shù)返回指定數(shù)字的以 2 為底的對(duì)數(shù)。等同于 LOG(2, number) 函數(shù)。

3.25、MOD 取兩數(shù)的余數(shù)

MySQL?MOD()?函數(shù)返回一個(gè)數(shù)字除以另一個(gè)數(shù)字的余數(shù)。

語法:

MOD(number1, number2)
number1 MOD number2
number1 % number2

參數(shù)說明:

  • number1:必需的。 被除數(shù)。
  • number2:必需的。 除數(shù)。

返回值:

  • 一個(gè)數(shù)字除以另一個(gè)數(shù)字的余數(shù)。
  • 返回?NULL情況:
    • number2?等于?0。
    • number1?為?NULL。

示例:

SELECT
    MOD(100, 10),	-- 0
    100 MOD 7,	    -- 2
    100 % 7,	    -- 2
    100 % 10,	    -- 0
    MOD(0, 1),	    -- 0
    MOD(1, 0),	    -- NULL
    MOD(NULL, 1)	-- NULL

3.26、PI 值

MySQL?PI()?函數(shù)返回 6 位小數(shù)位的 PI 值。

語法:

PI()

示例:

SELECT
    PI(),		            -- 3.141593
    PI() + 0.000000,	    -- 3.141593
    PI() * 1000000000000	-- 3141592653589.793000

3.27、POW?計(jì)算?x?的?y?次冪

MySQL?POW(x, y)?函數(shù)計(jì)算?x?的?y?次冪并返回結(jié)果,即: y個(gè)x相乘。

語法:

POW(x, y)

參數(shù)說明:

  • x:必需的。 次冪計(jì)算中的基數(shù)。
  • y:必需的。 次冪計(jì)算中的指數(shù)。

返回值:

  • x?的?y?次冪并返回結(jié)果。
  • 返回?NULL情況:任意一個(gè)參數(shù)為?NULL。

示例:

SELECT
    POW(2, 0),		    -- 1
    POW(2.5, 2),		-- 6.25
    POW(2, -4),		    -- 0.0625
    POW(2, NULL)	    -- NULL

3.28、POWER?計(jì)算?x?的?y?次冪

MySQL POWER(x, y) 函數(shù)計(jì)算 x 的 y 次冪并返回結(jié)果,即: xy。 POWER() 函數(shù)等同于 POW() 函數(shù)。

3.29、SQRT 取平方根

MySQL?SQRT()?函數(shù)返回一個(gè)數(shù)字的平方根。

語法:

SQRT(number)

參數(shù)說明:

  • number:必需的。 一個(gè)用于計(jì)算對(duì)數(shù)的數(shù)字。該值必須大于?0。

返回值:

  • 參數(shù)?number?的平方根。
  • 返回?NULL情況:number?是負(fù)數(shù)或者?NULL。

示例:

SELECT
    SQRT(16),	-- 4
    SQRT(101),	-- 10.04987562112089
    SQRT(-100),	-- NULL
    SQRT(NULL)	-- NULL

3.30、DEGREES 弧度值轉(zhuǎn)為度數(shù)

MySQL?DEGREES()?函數(shù)將弧度值轉(zhuǎn)為度數(shù)并返回。

語法:

DEGREES(number)

參數(shù)說明:

  • number:必需的。 一個(gè)表示弧度的數(shù)字。

返回值:

  • 指定的弧度值對(duì)應(yīng)的度數(shù)。
  • 返回?NULL情況:number?為?NULL。

示例:

SELECT
    RADIANS(0),		    -- 0
    RADIANS(360),	    -- 6.283185307179586
    RADIANS(-360),	    -- -6.283185307179586
    RADIANS(NULL)		-- NULL
SELECT
    DEGREES(0.75),	    -- 42.97183463481174
    DEGREES(-0.75),	    -- -42.97183463481174
    DEGREES(0),	        -- 0
    DEGREES(PI() * 2),	-- 360
    DEGREES(PI() * -1),	-- -180
    DEGREES(NULL)	    -- NULL

3.31、RADIANS?度數(shù)值轉(zhuǎn)為弧度值

MySQL?RADIANS()?函數(shù)將度數(shù)值轉(zhuǎn)為弧度值并返回。

語法:

RADIANS(number)

參數(shù)說明:

  • number:必需的。 一個(gè)表示度數(shù)的數(shù)字。

返回值:

  • 指定的弧度值對(duì)應(yīng)的度數(shù)。
  • 返回?NULL情況:number?為?NULL。

示例:

3.32、RAND 取0到1的隨機(jī)數(shù)

MySQL?RAND()?函數(shù)返回一個(gè) 0 (包含) 和 1 (不包含) 之間的隨機(jī)數(shù)。

語法:

RAND()
RAND(seed)

參數(shù)說明:

  • seed:可選的。產(chǎn)生隨機(jī)數(shù)的種子。如果提供了?seedRAND(seed)?函數(shù)將產(chǎn)生一個(gè)可重復(fù)的隨機(jī)數(shù)序列。

返回值:

  • 一個(gè) 0 (包含) 和 1 (不包含) 之間的隨機(jī)數(shù)。
  • 若提供了參數(shù)?seed,MySQL?RAND(seed)?函數(shù)將產(chǎn)生一個(gè)可重復(fù)的隨機(jī)數(shù)序列。
  • 若想返回其他區(qū)間(比如?m?和?n)的隨機(jī)數(shù),請(qǐng)使用以下公式:
    • m?和?n?之間的隨機(jī)數(shù):?RAND() * (n - m) + m
    • m?和?n?之間的隨機(jī)整數(shù):?FLOOR(RAND() * (n - m + 1) + m)

示例:

SELECT
    RAND(),		-- 0.9892005063492809
    RAND(),		-- 0.2601393091121123
    RAND(),		-- 0.3330950572463638
    RAND()		-- 0.8850573896291268

? ? ? ??文章來源地址http://www.zghlxwxcb.cn/news/detail-846123.html

到了這里,關(guān)于MYSQL數(shù)字函數(shù):不可不知的數(shù)據(jù)處理利器的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Python常用的數(shù)據(jù)處理函數(shù)和模塊

    Python還提供了許多其他用于數(shù)據(jù)處理和轉(zhuǎn)換的內(nèi)置函數(shù)和模塊。以下是一些常用的數(shù)據(jù)處理函數(shù)和模塊: sorted(iterable, key=func, reverse=False) 用于對(duì)可迭代對(duì)象進(jìn)行排序。你可以指定一個(gè)可選的 key 函數(shù)來自定義排序規(guī)則,以及一個(gè)可選的 reverse 參數(shù)來控制升序或降序排序。 en

    2024年02月05日
    瀏覽(21)
  • Python Slice函數(shù):數(shù)據(jù)處理利器詳解

    Python Slice函數(shù):數(shù)據(jù)處理利器詳解

    ? 在Python編程中,處理數(shù)據(jù)是一個(gè)非常常見且重要的任務(wù)。為了更高效地處理數(shù)據(jù),Python提供了許多內(nèi)置函數(shù)和方法。其中,slice()函數(shù)是一個(gè)非常強(qiáng)大且常用的工具,它可以幫助我們輕松地提取、操作和處理數(shù)據(jù)。無論是字符串、列表還是元組,slice()函數(shù)都能夠勝任。本文

    2024年01月22日
    瀏覽(25)
  • android不可不知調(diào)試技巧

    android不可不知調(diào)試技巧

    目錄 1、條件斷點(diǎn) 2、評(píng)估表達(dá)式(Evaluate Expression) 3、日志斷點(diǎn) 4、方法斷點(diǎn) 5、異常斷點(diǎn) 6、Field WatchPoint 假設(shè)我們列表循環(huán)的某個(gè)元素時(shí)候才暫停,就用這種方式。具體方式在循環(huán)列表打斷點(diǎn),對(duì)著斷點(diǎn)右鍵一下,然后會(huì)彈出有一行填寫condition的,這里就填寫條件即可,如

    2023年04月26日
    瀏覽(25)
  • 數(shù)據(jù)預(yù)處理——fit()函數(shù),transform()函數(shù),fit_transform()函數(shù)

    數(shù)據(jù)預(yù)處理——fit()函數(shù),transform()函數(shù),fit_transform()函數(shù)

    sklearn 中封裝的各種算法 調(diào)用之前都要 fit。 fit 相對(duì)于整個(gè)代碼而言,為后續(xù)API服務(wù), 用于從一個(gè)訓(xùn)練集中學(xué)習(xí)模型參數(shù),包括歸一化時(shí)要用到的均值,標(biāo)準(zhǔn)偏差 fit 之后,可以調(diào)用各種API方法, transform 是其中之一。 fit_transform 與 transform 運(yùn)行結(jié)果一致,但是 fit 與 transfor

    2024年02月05日
    瀏覽(21)
  • MySQL——查詢數(shù)據(jù)的處理

    MySQL——查詢數(shù)據(jù)的處理

    連接兩個(gè)數(shù)據(jù)列的值,并進(jìn)行輸出的格式化處理(顯示為一種統(tǒng)一的格式) concat( 列 1 + 格式化字 符 ) 顯示當(dāng)前日期,時(shí)間 增加時(shí)間 #怎加20秒 select *, addtime (order_date,20) from orders; #怎加具體時(shí)分秒 ?select *,addtime(order_date, \\\"2:10:5\\\" ) from orders; #怎加20天 select *, adddate (order_date,20)

    2024年04月09日
    瀏覽(20)
  • 【SQL 必知必會(huì)】- 第八課 使用函數(shù)處理數(shù)據(jù)

    【SQL 必知必會(huì)】- 第八課 使用函數(shù)處理數(shù)據(jù)

    目錄 函數(shù) ????????函數(shù)帶來的問題 ????????可移植(portable) ????????是否應(yīng)該使用函數(shù)? 使用函數(shù) ????????文本處理函數(shù) ????????SOUNDEX 支持 ????????日期和時(shí)間處理函數(shù) ????????數(shù)值處理函數(shù) ????????函數(shù)帶來的問題 ????????與幾乎所有

    2023年04月10日
    瀏覽(24)
  • MATLAB——數(shù)據(jù)歸一化處理(normalize函數(shù))

    MATLAB——數(shù)據(jù)歸一化處理(normalize函數(shù))

    數(shù)據(jù)歸一化: 數(shù)據(jù)的歸一化是特征縮放(feature scaling)的方法,是數(shù)據(jù)預(yù)處理的關(guān)鍵步驟。不同評(píng)價(jià)指標(biāo)往往具有不同的量綱和量綱單位,這樣的情況會(huì)影響到數(shù)據(jù)分析的結(jié)果,為了消除指標(biāo)之間的量綱影響,需要進(jìn)行數(shù)據(jù)歸一化處理,以解決數(shù)據(jù)指標(biāo)之間的可比性。原始數(shù)據(jù)

    2024年02月22日
    瀏覽(19)
  • 【MySQL】數(shù)據(jù)處理之 增●刪●改

    【MySQL】數(shù)據(jù)處理之 增●刪●改

    ?寫在前面 ?博客主頁: 努力的小鳴人 ?系列專欄: MySQL8.0基礎(chǔ)學(xué)習(xí) ?歡迎小伙伴們, 點(diǎn)贊??關(guān)注??收藏?? ?若有誤,請(qǐng)小伙伴們指正!?? 使用一次只能向表中插入一條數(shù)據(jù) ??情況1:為表的所有字段按默認(rèn)順序插入數(shù)據(jù) 值列表中須為表的 每一個(gè)字段 指定值 值的順

    2023年04月09日
    瀏覽(19)
  • 高維數(shù)據(jù)處理:Hessian 矩陣與凸性函數(shù)的挑戰(zhàn)

    高維數(shù)據(jù)處理是現(xiàn)代數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)領(lǐng)域中的一個(gè)重要話題。隨著數(shù)據(jù)規(guī)模的增加,數(shù)據(jù)的維度也在不斷增加,這為數(shù)據(jù)處理和分析帶來了巨大挑戰(zhàn)。在高維空間中,數(shù)據(jù)之間的相關(guān)性和結(jié)構(gòu)變得復(fù)雜且難以理解。因此,研究高維數(shù)據(jù)處理的方法和技術(shù)成為了一項(xiàng)緊迫的

    2024年02月20日
    瀏覽(22)
  • BIC-2022-BDT:區(qū)塊鏈和基于數(shù)字雙胞胎的智能制造高效數(shù)據(jù)處理安全框架

    BIC-2022-BDT:區(qū)塊鏈和基于數(shù)字雙胞胎的智能制造高效數(shù)據(jù)處理安全框架

    摘要 工業(yè)物聯(lián)網(wǎng)具有智能連接、數(shù)據(jù)實(shí)時(shí)處理、協(xié)同監(jiān)測(cè)、信息自動(dòng)處理等特點(diǎn),是物聯(lián)網(wǎng)時(shí)代的重要組成部分之一。異構(gòu)工業(yè)物聯(lián)網(wǎng)設(shè)備對(duì)高數(shù)據(jù)速率、高可靠性、高覆蓋、低延遲的要求,已成為信息安全領(lǐng)域的一大挑戰(zhàn)。工業(yè)物聯(lián)網(wǎng)中的智能制造產(chǎn)業(yè)需要多方協(xié)同的信息

    2024年02月06日
    瀏覽(30)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包