将SELECT的结果发送到MySQL中的存储过程

时间:2014-05-20 17:40:20

标签: mysql select stored-procedures

我有一个存储过程,它接受一个参数。通常,它将根据需要在单个id上调用。但是,有时候,在SELECT的每个结果上运行它会很有帮助。如何获取SELECT语句的结果并对每个结果运行存储过程?

1 个答案:

答案 0 :(得分:0)

这不是直接可能的,但是......

只要存储过程没有返回结果集,您就可以编写一个存储的函数来接受所需的输入,并使用与参数相同的值调用该过程。如果在select查询中使用了存储函数,则通常会为返回的每一行调用它,除非在where子句中引用它,在这种情况下,优化器可能会调用它以获得比您预期的更多的行,取决于查询计划。

或者您可以直接将逻辑移动到存储函数中,而不是完全使用过程。