我正在研究MySQL存储过程和函数.真正的区别是什么?

它们看起来很相似,但函数有更多的局限性.

我可能错了,但似乎存储过程可以做任何事情,而且比存储函数做得更多.为什么/何时使用过程与函数?

推荐答案

不能将存储过程与普通SQL混合,而可以使用存储函数.

e、 如果get_foo()是一个过程,则g.SELECT get_foo(myColumn) FROM mytable无效,但如果get_foo()是一个函数,则可以这样做.代价是函数比过程有更多的局限性.

Mysql相关问答推荐

完全相同的A B表达在SQL中的不同上下文中意外返回不同的结果

创建从表中筛选数据的过程时出错

根据SQL中的平均范围对学生进行排名

了解MySQL_stmt_BIND_NAMED_Param()-MySQL C API

在时间戳上搜索大的MySQL表很慢

为什么Mysql会根据查询参数改变查询执行计划?

SQL 查询仅当成员共享确切值时才 Select 成员对

为什么 `count` 函数有效但 `sum` 无效?

从 MySQL 8.0.12 升级到 8.0.32 时出错

如何获取从开始时间到结束时间的所有正在运行的作业(job)的总和?

如何从将分钟、天、月和年存储在不同列中的表中查询数据

从 2 个不同的表中获取数据并将它们加入 sql

从 SQL 中的左连接和内连接中减go 计数

基于两个单元格值的 SQL 过滤表

如何将表的链接列转换为 SQL 中的行?

MySQLi count(*) 总是返回 1

PHP PDO 与普通 mysql_connect

使用 mysql 处理非常大的数据

如何在 MySQL 中删除此索引?

在 MySQL Workbench 中导出超过 1000 条记录的查询结果