MySQL存储函数与存储过程习题

创建表并插入数据:

复制代码
        字段名 数据类型 主键 外键 非空 唯一 自增
复制代码
        id INT 是 否 是  是 否
复制代码
        name VARCHAR(50) 否 否 是  否 否
复制代码
        glass  VARCHAR(50) 否 否 是  否 否
复制代码
复制代码
复制代码
sch 表内容
复制代码
id name glass
复制代码
1 xiaommg glass 1
复制代码
2 xiaojun glass 2

1、创建一个可以统计表格内记录条数的存储函数 ,函数名为count_sch()

先创建一个表并插入一些数据:

mysql> \d //

mysql> create function count_sch()

-> returns int

-> begin

-> declare i int default 0;

-> select count(*) into i from sch;

-> return i;

-> end //

Query OK, 0 rows affected (0.00 sec)

mysql> select count_sch() //

2、创建一个存储过程avg_sai,有3个参数,分别是deptno,job,接收平均工资,功能查询emp表dept为30,job为销售员的平均工资。

先创建一个表并插入一些数据:

mysql> \d //

mysql> create procedure avg_sai(IN p1 int , IN p2 varchar(255) , OUT p3 int)

-> begin

-> select avg(sai) from emp where p1=deptno or p2=job;

-> end //

Query OK, 0 rows affected (0.00 sec)

mysql> call avg_sai(30,'销售员',@avg_sai) //

相关推荐
devmoon4 小时前
在 Polkadot Runtime 中添加多个 Pallet 实例实战指南
java·开发语言·数据库·web3·区块链·波卡
认真的薛薛5 小时前
数据库-sql语句
数据库·sql·oracle
爱学英语的程序员5 小时前
面试官:你了解过哪些数据库?
java·数据库·spring boot·sql·mysql·mybatis
·云扬·6 小时前
MySQL Redo Log落盘机制深度解析
数据库·mysql
用户982863025686 小时前
pg内核实现细节
数据库
码界筑梦坊6 小时前
330-基于Python的社交媒体舆情监控系统
python·mysql·信息可视化·数据分析·django·毕业设计·echarts
飞升不如收破烂~6 小时前
Redis 分布式锁+接口幂等性使用+当下流行的限流方案「落地实操」+用户连续点击两下按钮的解决方案自用总结
数据库·redis·分布式
workflower6 小时前
业务需求-假设场景
java·数据库·测试用例·集成测试·需求分析·模块测试·软件需求
亓才孓6 小时前
[JDBC]基于三层架构和MVC架构的JDBCTools
数据库
IT邦德7 小时前
RPM包快速安装Oracle26ai
数据库·oracle