MySQL數據庫 : 函數和存儲過程


CONCAT 可以把多個字符串連在一起,如把 doc_id 和 title這兩個字段的查詢結果組合成一個字符串:
SELECT CONCAT(doc_id,title) FROM simhash;

CONCAT_WS可以用指定的分隔符把多個字符串連接在一起,第一個參數為連接符,剩下的是字符串,如:
SELECT CONCAT_WS('-',doc_id,title) FROM simhash; doc_id和title中間會用 - 隔開

FORMAT()可以把數字格式化為字符串,第一個參數是要格式化的數字,第二個參數為保留小數點后多少位.

LOWER()把一個字符串所有字母轉成小寫, UPPER()把字符串所有字母轉成大寫

LEFT()是取一個字符串的前幾位,第一個參數是字符串,第二個參數是取前多少個字符.RIGHT()同理

LENGTH()獲取字符串長度, LTRIM(), RTRIM(), TRIM() 分別是刪除前面的空格,后面的空格以及前后的空格.

REPLACE()替換字符串,第一個參數是字符串,第二個參數是被替換的字符串,第三個參數是新字符串(可以用多個字符替換多個字符)

SUBSTRING()截取字符串,第一個 參數是需要截取的字符串,第二個參數是從第幾個字符開始截(mysql從1開始,沒有0),第三個參數是截幾個

CEIL() 向上取整, FLOOR()向下取整, DIV()整數除法(舍棄小數位), MOD()取余, POWER()冪運算 ROUND()四舍五入, TRUNCATE數字截取

NOW()當前日期和時間, CURDATE()當前日期, CURTIME()當前時間, DATE_ADD()時間增加或減少,如 DATE_ADD(NOW(),INTERVAL 1 MONTH) 代表當前時間加上1個月, DATEDIFF()計算兩個日期的差值, DATE_FORMAT()日期格式化,第一個參數是需要格式化的日期第二個參數是格式化樣式,如 SELECT date_format(now(),'%Y-%m-%d %H:%m:%s')

聚合函數: AVG()平均數, COUNT()總數, MAX()最大值, MIN()最小值, SUM()求和

加密函數: MD5(), PASSWORD()

declare 聲明的變量是局部變量,只能在存儲過程中或函數中使用,變量以@開頭,用 set聲明的,如 set @a = 1,這種變量是會話變量,對一個會話都有效.

典型函數主體寫法: declare定義局部變量, set賦值, while xxx do end while 是循環語句, if xxx then end if 是判斷語句

BEGIN
declare dis int;
declare i int;
set dis = 0;
set i = 0;
while i < 64 do
if(new_num >> i & 1) != (old_num >> i & 1) then
set dis = dis + 1;
end if;
set i = i + 1;
end while;
RETURN dis;
END

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM