【mysql的编程专题⑤】自定义函数

时间:2022-04-26 10:05:40

用户自定义函数(user-defined function,UDF) 是一种对mysql的扩展途径,其用法与内置函数相同

创建自定义函数

语法

create function function_name
returns
{string|integer|real|decimal}
routine_body

Example1

delimiter $
create function f1(gdate datetime)
returns varchar(100) READS SQL DATA -- 一定要声明;
begin
declare x varchar(100) default '';
set x = date_format(gdate,'%Y年%m月%h日 %H时%m分%s秒');
return x;
end $
delimiter ;

Example2

delimiter $
create function str_cut(str varchar(255),length tinyint)
returns varchar(255) READS SQL DATA
begin
if(ISNULL(str)) then
return '';
elseif char_length(str) <= length then
return str;
elseif char_length(str) > length then
return contact(left(str,length),'...');
end if;
end $
delimiter ;

查看函数

mysql> show function status\G
*************************** 1. row ***************************
Db: test
Name: f1
Type: FUNCTION
Definer: root@localhost
Modified: 2015-05-01 16:21:40
Created: 2015-05-01 16:21:40
Security_type: DEFINER
Comment:
character_set_client: utf8
collation_connection: utf8_general_ci
Database Collation: latin1_swedish_ci

删除函数

mysql> drop function f1; -- f1 函数名;
Query OK, 0 rows affected

【mysql的编程专题⑤】自定义函数的更多相关文章

  1. MySQL(10)---自定义函数

    MySQL(10)---自定义函数 之前讲过存储过程,存储过程和自定义函数还是非常相似的,其它的可以认为和存储过程是一样的,比如含义,优点都可以按存储过程的优点来理解. 存储过程相关博客: 1.MyS ...

  2. 1031&colon; &lbrack;编程入门&rsqb;自定义函数之字符串反转&lpar;python&rpar;

    问题 1031: [编程入门]自定义函数之字符串反转 时间限制: 1Sec 内存限制: 128MB 提交: 7225 解决: 3331 题目描述 写一函数,使输入的一个字符串按反序存放,在主函数中输入 ...

  3. 基本开题的感觉是了-MySQL继续继续(自定义函数&amp&semi;存储过程)

    hi 感觉论文开题基本确定了,凯森 1.MySQL -----自定义函数----- ----基本 两个必要条件:参数和返回值(两者没有必然联系,参数不一定有,返回一定有) 函数体:合法的SQL语句:以 ...

  4. mysql 总结二(自定义函数)

    本质:mysql内置函数的一种扩展,本质上与mysql内置函数一样. 函数必要条件: @1:参数(非必备): @2:返回值: 模板: create function function_name ret ...

  5. MYSQL数据库重点:自定义函数、存储过程、触发器、事件、视图

    一.自定义函数 mysql自定义函数就是实现程序员需要sql逻辑处理,参数是IN参数,含有RETURNS字句用来指定函数的返回类型,而且函数体必须包含一个RETURN value语句. 语法: 创建: ...

  6. MySQL存储过程&sol;存储过程与自定义函数的区别

    语法: 创建存储过程: CREATE [definer = {user|current_user}] PROCEDURE sp_name ([ proc_parameter [,proc_parame ...

  7. (转)MySQL存储过程&sol;存储过程与自定义函数的区别

    转自:http://www.cnblogs.com/caoruiy/p/4486249.html 语法: 创建存储过程: CREATE [definer = {user|current_user}]  ...

  8. 【存储过程】MySQL存储过程&sol;存储过程与自定义函数的区别

    ---------------------------存储过程-------------------- 语法: 创建存储过程: CREATE [definer = {user|current_user ...

  9. 【mysql的编程专题③】内置函数

    数学函数 常用 abs(x) 返回x的绝对值 floor(x) 返回小于x的最大整数值 mod(x,y) 返回x/y的模(余数) rand() 返回0到1内的随机值,可以通过提供一个参数(种子)使ra ...

随机推荐

  1. vijos P1915 解方程 加强版

    背景 B酱为NOIP 2014出了一道有趣的题目, 可是在NOIP现场, B酱发现数据规模给错了, 他很伤心, 哭得很可怜..... 为了安慰可怜的B酱, vijos刻意挂出来了真实的题目! 描述 已 ...

  2. yum提示字符编码错误

    1.问题描述: [root@localhost data]# yum Loaded plugins: product-id, refresh-packagekit, security, subscri ...

  3. phpcms在自定义模块中的自定义标签分页

    如果你是一个经验丰富的phpcms二次开发人员,本篇文章可以忽略不计,因为这里的写法自己都觉得很恶心        今天在开发一个网站自建了一个模块叫做论坛模块,目录名称:luntan        ...

  4. 高级Bash脚本编程指南&lpar;27&rpar;:文本处理命令(三)

    高级Bash脚本编程指南(27):文本处理命令(三) 成于坚持,败于止步 处理文本和文本文件的命令 tr 字符转换过滤器. 必须使用引用或中括号, 这样做才是合理的. 引用可以阻止shell重新解释出 ...

  5. C&plus;&plus;之文件输入输出

    在这里遇见不少的问题,其中的路径问题就是在windows中,\\转义字符才能准确的表示路径 #include <iostream> #include <fstream> #in ...

  6. ASP&period;NET通用权限框架 权限管理系统源码jquery 精美UI源码

    软件技术开发,合作请联系QQ:858-048-581 开发工具 VS2010 .sql2005.2008等(在Sql server数据执行脚本即可)  VS2010 打开保证本地运行成功(数据库.源代 ...

  7. 使用JSONP实现跨域

    什么是跨域? 简单的来说,出于安全方面的考虑,页面中的JavaScript无法访问其他服务器上的数据,即"同源策略".而跨域就是通过某些手段来绕过同源策略限制,实现不同服务器之间通 ...

  8. 左偏树&lpar;BZOJ4003&rpar;

    左偏树打个标记,没了. #include <cstdio> #include <vector> using namespace std; typedef long long l ...

  9. 美团--Quake全链路压测平台

    原文:连接: https://tech.meituan.com/2018/09/27/quake-introduction.html 开源分布式监控Cat: https://github.com/di ...

  10. brew 中的时间格式转换

    char * pACNowStr = NULL; JulianType jtNow; ISHELL_GetJulianDate(pIShell, , &jtNow); pACNowStr = ...