如何使用存储过程计算输出变量?

时间:2016-04-25 05:08:55

标签: vb.net stored-procedures sql-server-2005

SELECT COUNT(*) 
FROM tblRequest 
GROUP BY RequestStatusID

此查询返回具有相应状态Id的总请求的列。

我希望使用存储过程将请求分别计入输出变量中的statusId

此查询返回具有相应状态ID的总请求的列。

我希望使用存储过程在输出变量中获得与其statusId相对应的总请求。

即。它返回一个像

的列
______________  
|NoNameColumn|  
|------------|  
|      21    |
|       6    |  
|      14    |
|------------|  

我想分别使用存储过程和vb.net代码获取输出变量中的每个行值(例如,SET @ pending = 21,Set @ Sent = 6,SET Discarded = 14)。

简单来说:如何通过SQL Server存储过程在变量中获取该行的值?

2 个答案:

答案 0 :(得分:0)

CREATE PROCEDURE CountRequests
@requests int output
AS
SELECT @requests = COUNT(*) FROM tblRequest GROUP BY RequestStatusID

或只是选择它

SELECT COUNT(*) requests FROM tblRequest GROUP BY RequestStatusID

答案 1 :(得分:-2)

我使用以下存储过程来返回值。

CREATE PROCEDURE get_count

AS
BEGIN
DECLARE @VALUE int;

SET @VALUE=(SELECT COUNT(*) FROM tblRequest GROUP BY RequestStatusID);

RETURN @VALUE;

END
GO