开发者

Rows not being returned in stored proc

I have two rows in dbo.Members but my stored proc is not returning a count. I can run the query alone like SELECT COUNT(*) FROM dbo.Members WHERE MemberID = 1234 and it returns the count as 2 which is correct.

Why does it not return the rows in my stored proc?

SELECT
    ValidCount,
    InvalidCount,
    (SELECT COUNT开发者_JS百科(*) FROM dbo.Members WHERE MemberID = @pMemberID) AS 'TotalMembers'

FROM
    dbo.Reporting
WHERE
    MemberID = @pMemberID


Probably because you don't have entries in Reporting with MemberId = 1234.

Try this:

SELECT  COALESCE(validCount, 0) AS validCount,
        COALESCE(invalidCount, 0) AS invalidCount,
        (
        SELECT  COUNT(*)
        FROM    members m
        WHERE   m.memberId = p.memberId
        ) AS totalMembers
FROM    (
        SELECT  @pMemberId AS memberId
        ) p
LEFT JOIN
        reporting r
ON      r.memberId = p.memberId
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜