Mysql 函式應用

2021-04-19 02:05:12 字數 1337 閱讀 5577

摘自 daisylh 部落格

1.用if...then...elseif...

delimiter $$

drop function if exists `demodb`.`sf1` $$

create function `sf1`(pid varchar(10)) returns varchar(100)

begin

declare strsql varchar(100);

if pid="1" then  set strsql= 'select * from tablea';

elseif pid="2" then set strsql= 'select * from tableb' ;

else   set strsql= 'select * from tablec' ;

end if   ;

return strsql;

end $$

delimiter ;

2.用case...when...then...

delimiter $$

drop function if exists `demodb`.`sf2` $$

create function `sf2`(pid varchar(10)) returns varchar(100)

begin

declare strsql varchar(100);

case pid

when "1" then  set strsql= 'select * from tablea';

when "2" then set strsql= 'select * from tableb' ;

else   set strsql= 'select * from tablec' ;

end case  ;

return strsql;

end $$

delimiter ;

3.儲存過程中呼叫函式

delimiter $$

drop procedure if exists `jm***b`.`sp7` $$

create procedure `sp7`(in pid varchar(10))

begin

select sf1(pid) into @sql;

prepare stmt from  @sql;

execute stmt ;

end $$

delimiter ;

p.s.sf1(pid)即為1的函式

4.函式的查詢

show function status;

show create function sf1;

Mysql時間加減函式應用

mysql時間加減函式 開發中我們有時候需要對資料庫中時間內容就行修改,mysql也很任性化,給我們提供了修改時間的兩個函式以方便開發者使用 mysql時間加減函式為date add date sub 定義和用法 date add 函式向日期新增指定的時間間隔。date sub 函式向日期減少指定的...

mysql函式建立以及應用

建立sum s函式 setglobal log bin trust function creators true 防止報差錯的額語句 delimiter create function sum s a float b float returns float begin return a b end ...

MySQL自定義函式應用

mysql mysql delimiter mysql mysql create function myfunction in string varchar 255 in find str varchar 20 in repl str varchar 20 returns varchar 255 b...