2012-09-06 58 views
0

如何從基於激勵ID和收件人ID的兌換表中獲取「計數」並將其添加到以下查詢中。基於兩個ID獲取計數

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

下面的查詢會返回收件人和激勵數據。我想對此進行擴展並對收件人兌換次數進行「計數」。即redeemCount

贖回表看起來像這樣,由incentiveID鏈接,recipientID

RedeemedID incentiveID recipientID timestamp 
+0

你正在使用哪些DBMS? MySQL或MS SQL Server? –

回答

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 

然後,您可以加入該回目的地表把事情就像一個用戶名,或其他有關每個用戶的信息。

希望有幫助。