1:创建函数的语句

create function py_trim(str varchar(100)) returns varchar(100)
begin
declare x varchar(100);
set x=ltrim(rtrim(str));
return x;
end

2:查看:

  • 所有函数存储在mysql数据库下的proc表中
  • 说明:存储过程与函数都存储在proc表中,区别在type字段,func表中无数据
  • 查看python数据库中的函数
  • select name,type from mysql.proc where db='python';

3:调用:

select 函数名称(参数列表);

4:删除

drop function 函数名称;

5:变量

(1)声明变量,语法如下

declare 变量名 类型 default 默认值;
例:
declare x varchar(100);

(2)设置变量值,语法如下

set 变量名=值;
例:
set x='abc';

(3)使用变量:将变量写到表达式中,即可调用变量的值

6:判断语句

if 条件1 then
语句1;
elseif 条件2 then
语句2;
else
语句
end if;

7:循环

while 条件 do
语句;
end while# 退出循环:leave,相当于break
# 退出本次循环:iterate,相当于continue

8:示例:

(1):要求:定义函数odd,输出1-100间的偶数

create function odd () returns varchar(300)
begin
declare i int default 1;
declare x varchar(300) default '';
while i<=100 do
if i%2=0 then
set x=concat(x,' ',i);
end if;
set i=i+1;
end while;
return x;
end

用法:输出1-100间的偶数:

select odd();

(2):要求:定义函数tdd,接受一个整数参数如果该数是偶数,返回该数,否则返回0;

create function tdd (x int) returns varchar(300)
begin
if x%2=0 then
return x;
else
return 0;
end if;
end

用法:输出id是偶数的行:

select * from student where id=tdd(id);

9:字符串的方法

(1)concat(str1,str2,…):参数连成一个长字符串并返回(任何参数是null时返回null)

mysql> select concat(‘my’, ‘s’, ‘ql’);-> ‘mysql’
mysql> select concat(‘my’, null, ‘ql’);-> null

(2)length:返回字符串str的长度(对于多字节字符char_length仅计算一次)

mysql> select length(‘text’);-> 4

(3)locate(substr,str,pos):返回字符串substr在字符串str的第pos个位置起第一次出现的位置(str不包含substr时返回0)

mysql> select locate(‘bar’, ‘foobarbar’,5);-> 7

(4)instr(str,substr):返回字符串substr在字符串str第一次出现的位置(str不包含substr时返回0)

mysql> select instr(‘foobarbar’, ‘bar’);-> 4

(5)lpad(str,len,padstr):用字符串padstr填补str左端直到字串长度为len并返回

mysql> select lpad(‘hi’,4,’??’);-> ‘??hi’

(6)rpad(str,len,padstr):用字符串padstr填补str右端直到字串长度为len并返回

mysql> select rpad(‘hi’,5,’?’);-> ‘hi???’

(7)left(str,len):用字符串padstr填补str右端直到字串长度为len并返回

mysql> select rpad(‘hi’,5,’?’);-> ‘hi???’

(8)right(str,len):返回字符串str的右端len个字符

mysql> select right(‘foobarbar’, 4);-> ‘rbar’

(9) substring(str,pos,len):返回字符串str的位置pos起len个字符

mysql> select substring(‘quadratically’,5,6);-> ‘ratica’

(10)substring(str,pos)/substring(str from pos):返回字符串str的位置pos起的一个子串

mysql> select substring(‘quadratically’,5);-> ‘ratically’
mysql> select substring(‘foobarbar’ from 4);-> ‘barbar’

(11)substring_index(str,delim,count):返回从字符串str的第count个出现的分隔符delim之后的子串(count为正数时返回左端,否则返回右端子串)

mysql> select substring_index(‘www.mysql.com’, ‘.’, 2);-> ‘www.mysql’
mysql> select substring_index(‘www.mysql.com’, ‘.’, -2);-> ‘mysql.com’

(12)replace(str,from_str,to_str):用字符串to_str替换字符串str中的子串from_str并返回

mysql> select replace(‘www.mysql.com’, ‘w’, ‘ww’);-> ‘wwwwww.mysql.com’

(13) lcase(str)/lower(str):返回小写的字符串str

mysql> select lcase(‘quadratically’);-> ‘quadratically’

(14)ucase(str)/upper(str):返回大写的字符串str

mysql> select ucase(‘quadratically’);-> ‘quadratically’

(15)load_file(file_name):读入文件并且作为一个字符串返回文件内容(文件无法找到,路径
不完整,没有权限,长度大于max_allowed_packet会返回null)

mysql> update table_name set blob_column=load_file
("/tmp/picture") where id=1;

10:解决的bug

(1)报错 :drop table if exists T Error Code: 1046. No database selected Select the default DB to be used by double-clicking its name in the SCHEMAS list in the sidebar.

错误原因:未选定默认的数据库

解决方法:双击SCHEMAS列表中的某个数据库便可。

mysql自定义函数的创建相关推荐

  1. MYSQL自定义函数 的创建 create、查看函数、修改/更新函数删除函数 以及具体实例

    创建函数 1)使用语法创建 // msyql中的函数一定有返回值 // 创建函数的语法,注意:参数和返回值一定要写长度,避免使用到关键字 create function 函数名([形参列表]) ret ...

  2. MySQL自定义函数创建与使用总结

    MySQL自定义函数创建与使用总结 MySQL自定义函数和存储过程类似,也需要在数据库中创建并保存.它与存储过程一样,都是由SQL语句和控制语句组成的代码片段,可以被应用程序和其他SQL语句调用. M ...

  3. MySQL自定义函数(CREATE FUNCTION)

    在使用 MySQL 的过程中,MySQL 自带的函数可能完成不了我们的业务需求,这时候就需要自定义函数. 自定义函数是一种与存储过程十分相似的过程式数据库对象.它与存储过程一样,都是由 SQL 语句和 ...

  4. 数据库系列之mysql 自定义函数function,函数和存储过程的区别

    mysql 自定义函数function,函数和存储过程的区别 https://blog.csdn.net/u010365819/article/details/80470448 https://blo ...

  5. 16、mysql中函数的创建和使用

    sql语言可以进行编程,说到编程,那一定少不了使用函数对代码进行最小级别的封装,接下来介绍一下mysql中函数的写法以及应用 mysql中的函数可分为两类:系统函数.用户自定义函数. 简单的介绍几个常 ...

  6. mysql 自定义函数function,函数和存储过程的区别

    From: https://blog.csdn.net/u010365819/article/details/80470448 1.MySQL自定义函数简介 在MySQL中使用自定义函数也需要相应的要 ...

  7. MySQL自定义函数的使用

    MySQL字定义函数是对sql代码集的封装,我将分享有参数与没有参数的自定义函数的使用 studentinfo表数据: 自定义函数的创建.调用.删除 语法 无参数的自定义函数 # 无参数自定义函数 D ...

  8. mysql 自定义函数教程_MySQL自定义函数

    MySQL自定义函数 函数与存储过程类似,也是一组预先编译好的SQL语句的集合,但是存储过程可以有0个或多个返回,函数就只能有一个返回 创建函数 #语法 参数列表包含两部分 参数名和参数类型 #函数体 ...

  9. MySQL自定义函数(四十六)

    MySQL自定义函数 一.什么是MYSQL自定义函数? mysql当中的自定义函数,我们简称为UDF,它实际上是一种对MySQL扩展的途径,其用法与内置函数相同. 二.自定义函数应该具备哪些条件? 我 ...

  10. MySQL自定义函数的使用及MySQL中的流程控制语句

    MySQL自定义函数 文章目录 MySQL自定义函数 创建自定义函数 自定义函数的调用 自定义函数的删除 自定义函数的维护 流程控制语句 条件控制语句 循环语句 创建自定义函数 创建自定义函数时, 开 ...

最新文章

  1. mongodb php代码实例,MongoDB文档的更新(php代码实例)
  2. 数据库oracle文件怎么打开,Oracle某个数据文件损坏,如何打开数据库-数据库专栏,ORACLE...
  3. 电信/移动/联通同台秀肌肉 集体表态:云计算市场“不能丢”!
  4. easyui label显示不全_easyui 元素遍历问题
  5. 华为机型深色模式下问题
  6. Eclipse的环境配置
  7. 把echarts导出成pdf
  8. 阿里云Linux安装软件镜像源
  9. windows内核开发笔记十一:IRQL级别调用说明
  10. unicode 特殊字符表 特殊符号
  11. 个人博客(八)Hexo新建文章、主题小修改
  12. 小白学习图像处理——分水岭算法
  13. mac移动鼠标光标会变大_如何在Mac上使鼠标光标变大或变小
  14. Android精品软件汇总(不断更新)
  15. 有道笔记无法同步(笔录)
  16. python名片管理器实验报告_名片管理系统——实验报告.doc
  17. 开源的业务中台 全渠道一盘货 订单管理系统 OMS
  18. Nginx+SpringBoot实现负载均衡demo
  19. 自然语言处理面试34题:NLP面试考点,精准详尽解析 | 小彩蛋
  20. 什么叫电位器?什么叫电阻器?

热门文章

  1. 关于基本勾股数规律的探讨总结与例题!
  2. xp如何在电脑上设置无线网络连接服务器,xp电脑怎么设置wifi
  3. Python进阶强化训练之字符串处理技巧
  4. 一些常用的开发软件,定期更新!
  5. 关闭cidaemon进程的方法
  6. git pull 报错:‘info: detecting host provider for’
  7. 为什么说《千与千寻》是一部优秀的职场电影
  8. Windows添加开机和关闭开机启动项
  9. firefly 3399 开发板笔记
  10. springbus类是做什么用的_SpringCloud-Bus组件的使用