是否可以在视图中调用存储过程?

时间:2011-04-27 04:47:07

标签: mysql stored-procedures view

有关sql-server的类似问题已被问到here。我想知道它是否可能在MySql中。

修改

我想使用从视图中的过程返回的结果集。

1 个答案:

答案 0 :(得分:3)

如果你想获得结果集并在FROM子句中使用例程 - NO。 MySQL中存储的例程(过程或函数)不能将表作为结果值返回。

但您可以将函数用作简单值,例如 -

DELIMITER $$

CREATE FUNCTION mul10(Param1 INT)
RETURNS INT(11)
BEGIN
  RETURN Param1 * 10;
END
$$

DELIMITER ;

CREATE OR REPLACE VIEW view1
AS
SELECT mul10(2) AS column1;

SELECT column1 FROM view1;
----------
20