• 点击新建函数

  • 比如我要创建一个求平方和的函数

  • 选择是否添加参数,可以选择参数类型

  • 选择返回的属性的类型

  • 这是自定义函数的语法

  • CREATE FUNCTION <函数名> ( [ <参数1> <参数1类型> ],[ <参数2> <参数2类型>])
    RETURNS <返回值类型>
    BEGIN
    函数体>RETURN (<返回值>);
    END<
  • 书写函数的主体,在BEGIN和END之间的部分是函数的主体,即函数的具体实现。

  • DECLARE <变量名> <变量类型> DEFAULT <默认值>;
    SET <变量名>=<值>;
  • 点击保存函数会被保存起来,同时格式会自动变化

  • 如果书写错误会报错保存不了,修改错误后就可以保存了

  • Ps:这只是一个错误,还有别的错误
  • 调用自定义的函数

  • 除了新建函数以外,自定义函数也可以直接写在查询中,直接运行就可以创建

下面是一些应用实例:

  • 自定义生成手机号

CREATE  FUNCTION `generatePhone`() RETURNS char(11) CHARSET utf8
DETERMINISTIC
BEGINDECLARE head VARCHAR(100) DEFAULT '132,135,136,158,183'; DECLARE content CHAR(10) DEFAULT '0123456789'; DECLARE phone CHAR(11) DEFAULT substring(head, 1+(FLOOR(1 + (RAND() * 3))*4), 3); DECLARE i int DEFAULT 1; DECLARE len int DEFAULT LENGTH(content);WHILE i<9 DOSET i=i+1;SET phone = CONCAT(phone, substring(content, floor(1 + RAND() * len), 1));END WHILE; RETURN phone;
END
  • 随机生成姓名

CREATE FUNCTION generateName() RETURNS VARCHAR(3)DETERMINISTIC
BEGINDECLARE xing VARCHAR(2056) DEFAULT '赵钱孙李周郑王冯陈楮卫蒋沈韩杨朱秦尤许何吕施张孔曹严华金魏陶姜戚谢喻柏水窦章云苏潘葛奚范彭郎鲁韦昌马苗凤花方俞任袁柳酆鲍史唐费廉岑薛雷贺倪汤滕殷罗毕郝邬安常乐于时傅皮齐康伍余元卜顾孟平黄和穆萧尹姚邵湛汪祁毛禹狄米贝明臧计伏成戴谈宋茅庞熊纪舒屈项祝董梁杜阮蓝闽席季麻强贾路娄危江童颜郭梅盛林刁锺徐丘骆高夏蔡田樊胡凌霍虞万支柯昝管卢莫经裘缪干解应宗丁宣贲邓郁单杭洪包诸左石崔吉钮龚程嵇邢滑裴陆荣翁';DECLARE ming VARCHAR(2056) DEFAULT '靖雁寻春恨山格光华国源宇晗昱涵润翰飞翰海昊乾浩博和安弘博鸿朗华奥华灿嘉慕坚秉建明紫山千琴恨天傲芙盼山怀蝶冰兰霜怜梦紫寒妙幼翠友巧听寒梦柏醉易访旋尔珍谷雪乐萱涵菡海莲傲蕾青槐冬儿易梦惜雪宛海之柔夏青亦瑶妙菡熠彤鸿煊博涛烨霖烨华煜祺智宸正豪昊然明杰诚立轩立辉峻熙弘文熠彤鸿煊烨霖彤曼易南莲紫翠雨寒易烟如萱若金鑫锦程瑾瑜鹏经赋景同靖琪君昊俊明季同开济凯安康成乐语力勤良哲理群茂彦敏博明达朋义彭泽鹏举濮存溥心璞瑜浦泽奇邃祥荣轩向珊慕灵以蕊寻雁映易雪柳孤岚笑山柏翠萱乐丹翠柔谷山之瑶冰露涛伟惜文香寒新柔语蓉海安夜蓉涵柏水桃醉蓝春儿语琴从彤傲晴语兰又菱碧彤元儿晓霜碧凡夏菡曼香若烟半梦雅绿冰蓝灵槐平安书翠翠风香巧代祺轩越泽浩宇瑾瑜皓轩擎苍擎宇志泽靖琪明诚高瑞轩弘文哲瀚雨泽鑫磊梦琪忆之桃慕青问兰尔岚元香初夏沛菡傲珊曼文乐菱痴珊恨玉云梦曼哲瀚鑫鹏致远春竹修杰嘉懿煜城懿轩烨伟睿渊楷从寒忆香觅波静曼凡旋以亦念露芷蕾千兰新波代真新蕾雁玉冷卉南寻真晓亦俊驰雨泽烨磊晟睿天佑文昊修洁黎昕远航旭尧鸿亦玉凌萱访卉怀亦笑蓝春翠靖柏夜蕾冰夏梦松书雪乐枫念薇霜海云凝天沛珊寒云冰旋宛儿绿真盼伟诚建辉晋鹏天磊绍辉泽洋明轩健柏煊昊强伟宸博超君浩子骞明辉鹏涛炎彬鹤轩越彬风华苑博伟泽';DECLARE return_str VARCHAR(3) DEFAULT '';-- 随机选取一个姓氏的字符SET return_str = CONCAT(return_str, SUBSTRING(xing, FLOOR(1 + RAND() * (LENGTH(xing) / 3)), 1));-- 随机选取一个名字的字符SET return_str = CONCAT(return_str, SUBSTRING(ming, FLOOR(1 + RAND() * (LENGTH(ming) / 3)), 1));-- 随机判断是否使用第二个名字的字符IF RAND() > 0.400 THENSET return_str = CONCAT(return_str, SUBSTRING(ming, FLOOR(1 + RAND() * (LENGTH(ming) / 3)), 1));END IF;RETURN return_str;
END

MySQL自定义函数简单用法示例相关推荐

  1. escilpe mysql,wordpress函数esc_sql()用法示例

    esc_sql( string|array $data ) Escapes data for use in a MySQL query. 描述 Usually you should prepare q ...

  2. mysql 自定义函数实例_mysql自定义函数原理与用法实例分析

    本文实例讲述了mysql自定义函数原理与用法.分享给大家供大家参考,具体如下: 本文内容: 什么是函数 函数的创建 函数的调用 函数的查看 函数的修改 函数的删除 首发日期:2018-04-18 什么 ...

  3. mysql自定义函数示例代码,以及属性介绍

    以下是一个MySQL自定义函数的示例代码,该函数实现了将指定字符串中的大写字母转换为小写字母的功能: DELIMITER $$ CREATE FUNCTION to_lower(str VARCHAR ...

  4. yii mysql函数_Yii框架函数简单用法分析

    本文实例讲述了Yii框架函数简单用法.分享给大家供大家参考,具体如下: 1.redict return $this->redirect(['login']); redict其实是对于以下的封装  ...

  5. mysql自定义函数、存储过程、游标、触发器、事件(定时任务)

    创建函数FUN_GET_ORG_CHILD(rootId) CREATE FUNCTION `FUN_GET_ORG_CHILD`(rootId varchar(100))RETURNS varcha ...

  6. php theexcerpt,wordpress的excerpt()函数的用法示例

    本篇文章给大家带来的内容是关于wordpress的excerpt()函数的用法示例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 问题:在wordpres中的single页面,本身引 ...

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

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

  8. MySql自定义函数的定义和使用

    1.MySQL自定义函数简介 在MySQL中使用自定义函数也需要相应的要求,语法如下, 创建新函数: Create function function_name(参数列表) returns返回值类型 ...

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

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

最新文章

  1. SQL Server(五)——常用函数
  2. 基于Springboot实现校友录管理系统
  3. C#图解教程 第二十一章 命名空间和程序集
  4. 浅析SAX,DOM,JAXP,JDOM与DOM4J之间的关系
  5. 前端学习(1765):前端调试值之性能分析的方法三
  6. android 线性布局蒙层,Android开发 - 掌握ConstraintLayout(一)传统布局的问题
  7. STF简单修改实现安卓多机同屏控制
  8. 三星性能测试软件,三星R25的性能测试
  9. matlab中的tall,tall 数组 - MATLAB Simulink - MathWorks 中国
  10. mysql客户sqlyog_MySQL客户端工具 SQLyog
  11. JDK和JRE的下载与安装
  12. C++11_lambda表达式
  13. USB转TTL串口板使用问题
  14. 微软确认:从4月13日起,Win10系统将强制卸载旧版Edge浏览器
  15. C语言试题123之有 5 个人坐在一起,问第五个人多少岁?他说比第 4 个人大 2 岁。问第 4 个人岁数,他说比第 3 个人大 2 岁。问第三个人,又说比第 2 人大两岁。问第 2 个人,说比第一个
  16. 百度站长俱乐部SEO提问收集-6
  17. 新政策后Jira还好用吗?国内类似Jira的工具价格对比!
  18. 编写js代码的注意问题
  19. C# AForge的简单使用
  20. 创建Vue项目,找不到router文件(router.js)的解决方法

热门文章

  1. 【MSP是什么】MSP成功项目群管理
  2. echarts饼图 配置,及案例
  3. 深度学习论文代码复现——CycleGAN和pix2pix
  4. html中div加滚动条
  5. java获取当前时间和设置时间格式
  6. GSYVideoPlayer 使用‘小’心得之 改变放大和缩小的图标
  7. 固化剂过量会加快涂层固化速度吗?
  8. STM32F429 VCAP12电容错误死机
  9. 美学生用ChatGPT写论文被识破,导师:好到不符合我对学生的预期
  10. 为什么不使用java.util.logging?