MySQL中的函式 引數和作用域

2021-08-28 17:21:17 字數 1771 閱讀 5374

函式:將一段**塊封裝到乙個結構中,在需要執行**塊的時候,直接呼叫**塊即可,也就是實現**復用。

函式分為兩類:系統函式和自定義函式。

系統定義好的函式,直接呼叫即可。

任何函式都是有返回值的,因此函式的呼叫都是通過select呼叫。

mysql中,字串的基本操作單位是字元(最常見的是字元)。

char_length和length:檢視字串的字串長度和位元組長度

不難看出,位元組長度和字串長度是不同的。

instr:判斷字串是否在某個具體的字串中存在,存在的話返回具體的位置 ,不存在 返回0

lpad:將字串按照某個指定的填充方式,填充到指定的字串中。

insert:替換,找到目標位置指定長度的字串,替換成目標字串。

strcmp:字串比較

注意:不區分大小寫

函式要素:函式名 ,引數列表,函式體(作用域),返回值。

create function 函式名(引數列表) returns 資料型別 --規定要返回的資料

begin

函式體返回值

end函式的建立和呼叫:

檢視函式:

注意函式是指定資料庫的,如果切換資料庫則不能呼叫。

檢視函式的建立:

引數分為兩種,定義時的引數叫做形參,呼叫時的引數叫實參,呼叫時的引數叫實參(實參可以是數值也可以是變數)

形參:要求必須指定資料型別

function 函式名(形參名字 字段型別)returns 資料型別

注意在函式的外面也是可以檢視@修飾的變數的值的。

全域性變數可以在任何地方使用,區域性變數只能在函式的內部使用。

全域性變數:使用set關鍵字定義的,使用@符號修飾的變數。

區域性變數:使用declare關鍵字宣告,沒有@符號,所有的區域性變數的宣告必須在函式體開始之前。

函式引數,作用域

def foo x,y,args,a 1,b,kwargs print x,y print args print a print b print kwargs foo 1,2,3,4,5,b 8,c 4,d 5 1 2 3,4,5 18 後定義的引數,必須被傳值 有預設值的除外 且必須按照關鍵字實參...

函式的作用域和預設引數

一 預設引數 1 不指定,就使用預設引數 stanf student 不會報錯 2 沒有預設值得引數我可以叫做必填引數 3 預設引數可以定義多個 def stamf a,b 2,c 3 4 定義函式的時候一定是必選引數在前,預設引數在後 二 可變引數 儲存在乙個元組tuple 示例 a的平方 b的平...

函式的引數作用域

注意理解 1 var x 1 function f x,y x f 2 2 2 let x 1 function f y x f 1 3 function f y x f referenceerror x is not defined 4 var x 1 function foo x x foo r...