Mysql中的函式

2021-09-07 05:10:49 字數 1225 閱讀 4885

mysql中的函式與儲存過程類似,都是一組sql集;

函式可以return值,儲存過程不能直接return,但是有輸出引數可以輸出多個返回值;

函式可以嵌入到sql語句中使用,而儲存過程不能;

函式一般用於實現較簡單的有針對性的功能(如求絕對值、返回當前時間等),儲存過程用於實現複雜的功能(如複雜的業務邏輯功能);

mysql本身已經實現了一些常見的函式,如數學函式、字串函式、日期和時間函式等等,不一一枚舉,這裡簡單的使用下幾個函式:

求絕對值abs:

求ascii:

自定義個函式,判斷輸入引數是否大於等於10:

--

----------------------------

--function structure for `func_compare`

------------------------------

drop

function

ifexists

`func_compare`;

delimiter ;;

create definer=`root`@`localhost` function `func_compare`(a int) returns

varchar(200

) charset utf8

begin

#routine body goes here...

if a >=

10then

return

'大於等於10';

else

return

'小於10';

endif;

end;;

delimiter ;

驗證函式:

select func_compare(9), func_compare(11)
執行結果:

mysql中的函式名 MySQL中的函式

一 數學函式 數學函式主要用於處理數字,包括整型 浮點數等。abs x 返回x的絕對值 select abs 1 返回1 ceil x ceiling x 返回大於或等於x的最小整數 select ceil 1.5 返回2 floor x 返回小於或等於x的最大整數 select floor 1.5...

mysql中的if函式

mysql中的if函式還是很強大的,特別是在做一些統計查詢時,可以講多個查詢結果合併成一條記錄 例如 有這樣一張表 產品名productname 使用者名稱username 部門departname 評分score 香瓜子張三 調查部2 香瓜子李四 調查部3 香瓜子王五 市場部4 香瓜子趙六 市場部...

MYSQL中的函式

文字函式 trim ltrim,rtrim去掉空格的函式。upper 大寫。lower 小寫。left 返回串左邊的字元。right 返回串右邊的字元。length 返回串的長度。locate 返回串的乙個子串。soundex 返回串的soundex值,發音類似的串。substring 返回子串的字...