0

我怎样才能从我的兑换表中取回一个“计数”,基于激励ID 和收件人ID 并将其添加到以下查询中。

SELECT recipient.*, incentive.*
            FROM recipient 
            INNER JOIN incentive ON recipient.incentiveID=incentive.incentiveID
            WHERE recipient.mobile = :mobile 
            AND recipient.incentiveID = :incentiveID"

下面的查询带回收件人和激励数据。我想扩展它并“计算”收件人兑换了多少次。即兑换计数

兑换表 看起来像这样,并通过激励ID ,收件人ID 链接

RedeemedID incentiveID recipientID timestamp
4

1 回答 1

1

如果您想通过激励计算每位员工的赎回次数,您可以尝试类似的方法

select a.recipientID,a.incentiveID,count(*)
  from redeemed a
 group by a.recipientID,a.incentiveID

如果要添加所有兑换的计数,则无法将其添加到当前查询中,因为您必须将激励表的元素包含到 GROUP BY 子句中。您可以创建一个查询每个人的总赎回,如下所示:

select a.receipientID, count(*)
  from redeemed a
 group by a.recipientID

然后,您可以将其连接回收件人表以获取用户名或其他相关的每个用户信息。

希望这会有所帮助。

于 2012-09-06T13:22:34.047 回答