繁体   English   中英

在mysql中使用存储过程选择

[英]using a stored procedure in a mysql select

我是sql新手,对使用存储过程感到困惑。

我有两个表,一个用户表和一个注册表,两者之间存在一对多的关系。 用最简单的话来说,我想输出一个包含其注册计数的用户列表。 我知道如何通过左联接来做到这一点。 但是,注册的选择有些混乱,我希望它更整洁。

我真正想要的是“从用户中选择users.name,getCount(users.id)”,并具有所有用于计数getCount存储过程中的注册的逻辑。 但是我没有找到任何这样做的文档。 这可能吗,或者getCount进入左联接,或者这不是存储过程的目的吗?

您不能在SELECT语句中使用存储过程。 但是您可以使用一个函数。 您无法在FUNCTION中执行的某些操作。

CREATE FUNCTION test (id INT)
RETURNS INT
BEGIN
DECLARE get_count INT;

..
logic to set get_count
..

RETURN get_count;
END$$

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM