【问题标题】:Get mysql other stored procedure to new store procedure data获取mysql其他存储过程到新的存储过程数据
【发布时间】:2013-08-02 03:29:46
【问题描述】:

我想将mysql存储过程的结果放入其他存储过程并插入到临时表中。

例子:

存储过程1的结果

ID NAME SEX
1  A    M
2  B   F
3  C   M

存储过程2中的代码

CREATE TEMPORARY TABLE TBL1;
INSERT INTO TBL1 (call storeprocedure1(')); 

我们如何将存储过程1中的所有数据插入到存储过程2中的临时表中?

【问题讨论】:

  • 不可能。即使有函数也是不可能的。另一种选择是在storeprocedure1 本身内加载TBL1

标签: mysql


【解决方案1】:

不幸的是,你仍然不能在 Mysql 中这样做。

一种可能的解决方案是从第一个存储过程中插入一个临时表并在第二个存储过程中使用它。

CREATE TEMPORARY TABLE tmp_result
    (`ID` int, `NAME` varchar(1), `SEX` varchar(1));

CREATE PROCEDURE sp_one()
  INSERT INTO tmp_result
  SELECT 1 id, 'A' name, 'M' sex UNION ALL
  SELECT 2, 'B', 'F' UNION ALL
  SELECT 3, 'C', 'M';

CREATE PROCEDURE sp_two()
  SELECT * FROM tmp_result;

CALL sp_one();
CALL sp_two();

DROP TEMPORARY TABLE tmp_result;

【讨论】:

  • 有帮助吗?您的问题需要更多帮助吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-07
  • 1970-01-01
  • 2017-01-01
  • 1970-01-01
相关资源
最近更新 更多