MySql存储过程:如何从过程表中选择?

Cam*_*ata 25 mysql stored-procedures

假设我们有一个存储过程从表中选择一些东西:

CREATE PROCEDURE database.getExamples() 
SELECT * FROM examples;

如何在以后的选择中使用此过程的结果?(我试过了

SELECT * FROM (CALL database.getExamples())

但没有成功.)我应该在程序中使用SELECT ... INTO outVariable吗?或者我应该使用返回表格的函数吗?

Cam*_*ata 6

在这个帖子中重新提出了问题:存储过程/函数可以返回一个表吗?.显然,没有临时表的使用是不可能的.

  • 是什么让它如此明显,没有临时表是不可能的?这不回答这个问题. (4认同)
  • @circuitry语法清楚地表明MySQL不允许`select*from getExmaples()...`.这并不一定意味着没有其他办法可以做到这一点.这是一个令人沮丧的问题; 在PostgreSQL中,很容易从getExamples()...中选择*. (2认同)