MySQL-函数

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
简介: MySQL-函数

1.函数

1.1创建函数

CREATE FUNCTION calculate_salary(emp_id INT) RETURNS INT
BEGIN
  DECLARE emp_salary INT;
  SELECT salary INTO emp_salary FROM employee WHERE id = emp_id;
  RETURN emp_salary * 12;
END ;

解释:

以上代码定义了一个名为 calculate_salary 的函数,该函数需要一个 emp_id 参数,并且会返回一个整数类型的值。在函数内部,首先声明了一个名为 emp_salary 的局部变量,其类型为整数。然后,使用 SELECT INTO 语句从 employee 表格中查询指定 emp_id 的员工薪水,并将查询结果赋值给 emp_salary 变量。最后,将 emp_salary 值乘以 12 并返回结果。

  • 建表及数据准备
CREATE TABLE employee (
  id INT NOT NULL AUTO_INCREMENT,
  name VARCHAR(50) NOT NULL,
  age INT NOT NULL,
  sex ENUM('M', 'F') NOT NULL,
  salary DECIMAL (10, 2) NOT NULL,
  dept_id INT NOT NULL,
  PRIMARY KEY (id)
);
INSERT INTO employee (name, age, sex, salary, dept_id) VALUES
  ('Tom', 25, 'M', 45000.00, 1),
  ('Sarah', 31, 'F', 55000.00, 2),
  ('John', 42, 'M', 65000.00, 3),
  ('Lisa', 27, 'F', 48000.00, 1),
  ('David', 39, 'M', 72000.00, 2),
  ('Amy', 28, 'F', 50000.00, 3),
  ('Daniel', 45, 'M', 89000.00, 1),
  ('Emily', 33, 'F', 62000.00, 2);

1.2函数运行

  • 使用select 函数名(参数);
SELECT calculate_salary(1);

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
24天前
|
存储 SQL 关系型数据库
MySQL基础:函数
本文介绍了MySQL中几种常用的内建函数,包括字符串函数、数值函数、日期函数和流程函数。字符串函数如`CONCAT()`用于拼接字符串,`TRIM()`用于去除字符串两端的空格,`MOD()`求余数,`RAND()`生成随机数,`ROUND()`四舍五入。日期函数如`CURDATE()`返回当前日期,`NOW()`返回当前日期和时间,`DATE_ADD()`添加时间间隔,`DATEDIFF()`计算日期差。流程函数如`IF()`和`CASE WHEN THEN ELSE END`用于条件判断。聚合函数如`COUNT()`统计行数,`SUM()`求和,`AVG()`求平均值
24 8
MySQL基础:函数
|
9天前
|
JSON 关系型数据库 MySQL
MySQL 8.0常用函数汇总与应用实例
这些函数只是MySQL 8.0提供的众多强大功能的一部分。通过结合使用这些函数,你可以有效地处理各种数据,优化数据库查询,并提高应用程序的性能和效率。
18 3
|
2月前
|
SQL 关系型数据库 MySQL
在 MySQL 中使用 `RIGHT` 函数
【8月更文挑战第8天】
236 7
在 MySQL 中使用 `RIGHT` 函数
|
2月前
|
SQL 关系型数据库 MySQL
在 MySQL 中使用 `REPLACE` 函数
【8月更文挑战第8天】
635 7
在 MySQL 中使用 `REPLACE` 函数
|
2月前
|
存储 SQL 关系型数据库
在 MySQL 中使用 `RTRIM` 函数
【8月更文挑战第8天】
142 8
在 MySQL 中使用 `RTRIM` 函数
|
2月前
|
缓存 关系型数据库 MySQL
在 MySQL 中使用 SPACE 函数
【8月更文挑战第5天】
102 3
在 MySQL 中使用 SPACE 函数
|
1月前
|
存储 关系型数据库 MySQL
MySQL MATCH 函数如何使用 WITH QUERY EXPANSION?
【9月更文挑战第2天】MySQL MATCH 函数如何使用 WITH QUERY EXPANSION?
29 0
|
3月前
|
存储 JSON 关系型数据库
mysql中find_in_set()函数用法详解及增强函数
总结而言,`FIND_IN_SET()`是MySQL中处理由逗号分隔的字符串列表的一种便捷方法,尤其适用于列表相对较短且不经常更改的场景。然而,对于更为复杂的需要高性能和可扩展性的数据库设计,它可能不是最优选择,应考虑使用更加正规化的数据库结构。
222 2
mysql中find_in_set()函数用法详解及增强函数
|
2月前
|
存储 关系型数据库 MySQL
|
2月前
|
SQL 关系型数据库 MySQL
SQL Server、MySQL、PostgreSQL:主流数据库SQL语法异同比较——深入探讨数据类型、分页查询、表创建与数据插入、函数和索引等关键语法差异,为跨数据库开发提供实用指导
【8月更文挑战第31天】SQL Server、MySQL和PostgreSQL是当今最流行的关系型数据库管理系统,均使用SQL作为查询语言,但在语法和功能实现上存在差异。本文将比较它们在数据类型、分页查询、创建和插入数据以及函数和索引等方面的异同,帮助开发者更好地理解和使用这些数据库。尽管它们共用SQL语言,但每个系统都有独特的语法规则,了解这些差异有助于提升开发效率和项目成功率。
130 0

相关产品

  • 云数据库 RDS MySQL 版
  • 下一篇
    无影云桌面