MySQL 创建函数(Function)

摘要:
如何创建MySQL数据库函数语法CREATEFUNCTIONfunc_Name([func_parameter])//括号是必需的,参数是可选的RETURNStyle[charactual…]routine_BodyCREATEFUNCTION用于创建函数的关键字;func_Name表示函数的名称;func_Parameters是函数的参数列表和参数列

目标

怎么样MySQL创建数据库功能(Function)


语法

CREATE FUNCTION func_name ( [func_parameter] ) //括号是必须的,參数是可选的
RETURNS type
[ characteristic ...] routine_body
  • CREATE FUNCTION 用来创建函数的keyword;
  • func_name 表示函数的名称;
  • func_parameters为函数的參数列表,參数列表的形式为:[IN|OUT|INOUT] param_name type
  1. IN:表示输入參数。
  2. OUT:表示输出參数;
  3. INOUT:表示既能够输入也能够输出;
  4. param_name:表示參数的名称;
  5. type:表示參数的类型,该类型能够是MySQL数据库中的随意类型;


演示样例

创建演示样例数据库、演示样例表与插入样例数据脚本:

create database hr;
use hr;

create table employees
(
	employee_id int(11) primary key not null auto_increment,
	employee_name varchar(50) not null,
	employee_sex varchar(10) default '男',
	hire_date datetime not null default current_timestamp,
	employee_mgr int(11),
	employee_salary float default 3000,
	department_id int(11)
);


insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('David Tian','男',10,7500,1);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Black Xie','男',10,6600,1);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Moses Wang','男',10,4300,1);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Rena Ruan','女',10,5300,1);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Sunshine Ma','女',10,6500,2);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Scott Gao','男',10,9500,2);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Warren Si','男',10,7800,2);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Kaishen Yang','男',10,9500,3);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Simon Song','男',10,5500,3);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Brown Guan','男',10,5000,3);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Eleven Chen','女',10,3500,2);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Cherry Zhou','女',10,5500,4);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Klause He','男',10,4500,5);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Maven Ma','男',10,4500,6);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Stephani Wang','女',10,5500,7);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Jerry Guo','男',10,8500,1);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Gerardo Garza','男',10,25000,8);
insert into employees(employee_name,employee_sex,employee_mgr,employee_salary,department_id) values ('Derek Wu','男',10,5500,5);


select * from employees;

MySQL 创建函数(Function)第1张


创建函数-依据ID获取员工姓名与员工工资

DELIMITER //
CREATE FUNCTION GetEmployeeInformationByID(id INT)
RETURNS VARCHAR(300)
BEGIN
	RETURN(SELECT CONCAT('employee name:',employee_name,'---','salary: ',employee_salary) FROM employees WHERE employee_id=id);
END//
DELIMITER ;

调用函数

在MySQL——函数的用法与MySQL内部函数的用法一样。

MySQL 创建函数(Function)第2张


<很多其它精彩内容。见后面更新...>

假设您们在尝试的过程中遇到什么问题或者我的代码有错误的地方,请给予指正,很感谢!

联系方式:david.louis.tian@outlook.com

版权@:转载请注明出处。

版权声明:本文博客原创文章,博客,未经同意,不得转载。

免责声明:文章转载自《MySQL 创建函数(Function)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇xxx.forEach is not a function(DOM集合--类数组对象转化为数组)SAP BPC方案介绍下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

MySql笔记 --&amp;gt;1

MySQL1、sql、DB、DBMS分别是什么,他们之间的关系?    DB:         DataBase(数据库,数据库实际上在硬盘上以文件的形式存在)    DBMS:         DataBase Management System(数据库管理系统,常见的有:MySQL Oracle DB2 Sybase SqlServer...)    ...

MySQL(三) 数据库表的查询操作【重要】

      序言           1、MySQL表操作(创建表,查询表结构,更改表字段等),           2、MySQL的数据类型(CHAR、VARCHAR、BLOB,等),           本节比较重要,对数据表数据进行查询操作,其中可能大家不熟悉的就对于INNER JOIN(内连接)、LEFT JOIN(左连接)、RIGHT JOIN(...

mysql慢查询日志分析工具 mysqlsla(转)

mysql数据库的慢查询日志是非常重要的一项调优辅助日志,但是mysql默认记录的日志格式阅读时不够友好,这是由mysql日志记录规则所决定的,捕获一条就记录一条,虽说记录的信息足够详尽,但如果将浏览慢查询日志做为一项日常工作,直接阅读mysql生成的慢查询日志就有可能比较低效了。 除了操作系统命令直接查看slowlog外,mysql自己也提供了一个阅读s...

MySQL数据库运维的五大指标

如何评价一个公司数据库运维水平的高低?用什么来进行横向与纵向对比?自动化平台建设的目标是什么?必须有相应的指标体系来指导,此指标体系必须满足以下条件:• 可以用数字来测算和衡量• 最终指标,而不是中间指标比如有时DBA会关注数据库的吞吐量,但吞吐量越高不能代表数据库提供的服务质量越好,开发人员关心这个指标的原因也是因为担心过高的吞吐量会影响响应时间或者造成...

Zabbix监控系统详解:ubuntu系统下软件的安装

Zabbix监控系统详解1、介绍zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。 zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。 zabbix由2部分构成,zabbix server与可选组件zabbix agent。 zabbix se...

Mysql 主从复制

mysql主从复制好处:1. 如果是单个数据库,如果挂了就凉凉2.主备数据库,挂了一台主库,我可能还有很多个备用的数据库2,读和写分开,减少了数据库的压力 实验准备:主机一(主) : 192.168.11.70主机二(从): 192.168.11.224都装有Mariadb 第一步-主机的操作: 1.在matser主库上的操作,开启主库功能先关闭服务sys...