語法:
create function 函式名(引數)
returns 返回值資料型別
asbegin
sql語句(必須有return 變數或值)
end
例子:
1.建立函式:
create function mystr(@strs varchar(50))
returns varchar(50)
asbegin
declare @str2 varchar(30)
set @str2=@strs
return @str2
end
2.執行函式:
select dbo.mystr('aa') as result
在sql語句中執行:
declare @str3 varchar(30)
set @str3=(select name from userinfo where huji=dbo.mystr('邯鄲') and id=23 )
select @str3
經典例子:
-- 最簡單的僅有一條sql的函式
create function myselect2() returns int return 666;
select myselect2(); -- 呼叫函式
--create function myselect3() returns int
begin
declare c int;
select id from class where cname="python" into c;
return c;
end;
select myselect3();
-- 帶傳參的函式
create function myselect5(name varchar(15)) returns int
begin
declare c int;
select id from class where cname=name into c;
return c;
end;
select myselect5("python");
語法:
create function 函式名(引數)
returns table
asreturn(一條sql語句)
例子:
1.建立函式:
create function tabcmess(@title varchar(10))
returns table
as return(select title,des from product where title like '%'+@title+'%')
2.執行:
select * from tabcmess('aaa')
語法:
create function 函式名(引數)
returns **變數名table (**變數定義)
as begin
sql語句
end
例子:
create function tabcmessalot (@title varchar(10))
returns @ctable table(title varchar(10) null,des varchar(100) null)
asbegin
insert @ctable select title,des from product where title like '%'+@title+'%'
return
end--執行
select * from tabcmessalot('aaa')
還可以參考文章: mysql自定義函式優點 MySQL自定義函式
在使用 mysql 的過程中,mysql 自帶的函式可能完成不了我們的業務需求,這時候就需要自定義函式。自定義函式是一種與儲存過程十分相似的過程式資料庫物件。它與儲存過程一樣,都是由 sql 語句和過程式語句組成的 片段,並且可以被應用程式和其他 sql 語句呼叫。自定義函式與儲存過程之間存在幾點區...
mysql自定義函式命名 MySQL自定義函式
在使用 mysql 的過程中,mysql 自帶的函式可能完成不了我們的業務需求,這時候就需要自定義函式。自定義函式是一種與儲存過程十分相似的過程式資料庫物件。它與儲存過程一樣,都是由 sql 語句和過程式語句組成的 片段,並且可以被應用程式和其他 sql 語句呼叫。自定義函式與儲存過程之間存在幾點區...
mysql 自定義函式
今天要做乙個排序,有中文和英文的,資料庫採用utf8編碼,排除來的不對,所以需要將中文轉換成中文的第乙個字母,然後來排序 先小小的看一下mysql的自定義函式 drop function if exists fntable 如果存在就刪除 delimiter 函式開始 create function...