1. 程式人生 > 其它 >五、MySQL函式

五、MySQL函式

  MySQL提供了眾多功能強大的、方便易用的函式。使用這些函式,可以極大的提高使用者對資料庫的管理效率。

一、MySQL函式簡介

  函式表示對輸入引數值返回一個具有特定關係的值,MySQL提供了大量豐富的函式,在進行資料庫管理以及資料的查詢和操作時將會經常用到各種函式。通過對資料的處理,資料庫功能可以變得更加強大,更加靈活的滿足不同使用者的需求。MySQL中的函式包括:數學函式、字串函式、日期和時間函式、條件判斷函式、系統資訊函式和加密函式等。

二、數學函式

  數學函式主要用來處理數值資料,主要的數學函式有:絕對值函式、三角函式(包括正弦函式、餘弦函式、正切函式、餘切函式等)、對數函式、隨機數函式等。在有錯誤產生時,數學函式將會返回空值NULL。

2.1 絕對值函式和圓周率函式

  (1)ABS(X)返回X的絕對值。

  (2)PI()返回圓周率π的值。預設的顯示小數位數是6位。

2.2 平方根函式和求餘函式

  (1)SQRT(X)返回非負數X的二次方根。

  (2)MOD(X,Y)返回X被Y除後的餘數,MOD()對於帶有小數部分的數值也起作用,它返回除法運算後的精確餘數。

2.3 獲取整數的函式

  (1)CEIL(X)和CEILING(X)意義相同,返回不小於X的最小整數值,返回值轉化為一個BIGINT。

  (2)FLOOR(X)返回不大於X的最大整數值,返回值轉化為一個BIGINT。

2.4 獲取隨機數的函式

  RAND(X)返回一個隨機浮點值V,範圍在0到1之間(即0<=V<=1)。若已指定一個整數引數X,則它被用作種子值,用來產生重複序列。不帶引數的RAND()每次產生的隨機數值是不同的。當RAND(X)的引數相同時,將產生相同的隨機數,不同的X產生的隨機數值不同。

2.5 四捨五入函式和數值擷取函式

  (1)ROUND(X)返回最接近於引數X的整數,對X值進行四捨五入。ROUND(X,Y)返回最接近於引數X的數,其值保留到小數點後面Y位,若Y為負值,則將保留X值到小數點左邊Y位,保留的小數點左邊的相應位數直接儲存為0,不進行四捨五入。

  (2)TRUNCATE(X,Y)返回被捨去至小數點後Y位的數字X。若Y值為0,則結果不帶有小數點或不帶有小數部分。若Y為負數,則截去(歸零)X小數點左起第Y位開始後面所有低位的值。

2.6 符號函式

  SIGN(X)返回引數的符號,X的值為負、零和正時結果依次為-1、0和1。

2.7 冪運算函式

  (1)POW(X,Y)或者POWER(X,Y)函式返回X的Y次乘方的結果值。

  (2)EXP(X)返回e的X乘方後的值。

2.8 對數運算函式

  LOG(X)返回X的自然對數,X相對於基數e的對數,對數定義域不能為負數,因此LOG(-3)返回結果為NULL。LOG10(X)返回X的基數為10的對數。

2.9 角度、弧度相互轉換函式

  (1)RADIANS(X)將引數X由角度轉化為弧度。

  (2)DEGREES(X)將引數X由弧度轉化為角度。

2.10 正弦、餘弦、正切和反正切函式

  (1)SIN(X)返回X的正弦,其中X為弧度值。

  (2)ASIN(X)返回X的反正弦,即正弦為X的值。若X不在-1和1的範圍之內,則返回NULL。

  (3)COS(X)返回X的餘弦,其中X為弧度值。

  (4)ACOS(X)返回X的反餘弦,即餘弦是X的值。若X不在-1和1的範圍之內,則返回NULL。

  (5)TAN(X)返回X的正切,其中X為給定的弧度值。

  (6)ATAN(X)返回X的反正切,即正切為X的值。

  (7)CAT(X)返回X的餘切。

三、字串函式

  字串函式主要用來處理資料庫的字串資料,MySQL中字串函式有:計算字串長度、字串合併函式、字串替換函式、查詢指定字串位置函式等。