1

クエリに関して私を助けてください。私は DBMS がかなり苦手です。

TBLParent次のような行を持つテーブルがあります

pkParentId   FKProductId     Name
  1              5             P1
  2              5             P2
  3              3             P3

TBLChildそして、その子で構成される別のテーブルがあります

pkId     fkParentId    ChildName
 1            1          C1
 2            1          c2
 3            2          c1

さて、問題は、親レコードとその子の数に基づいてほしいということですproductId

例:したい

select 
    TBLParent.pkParentId, TBLParent.FKProductId, 
    TBLParent.Name, 
    count of its children
where   
    TBLParent.FKProductId = 5   

私はこのようにしてみました

Select 
    count(TBLChild.pkId) AS total, 
    TBLChild.fkParentId    
from  
    TBLChild 
group by 
    TBLChild.fkParentId  

しかし、このカウントで親テーブルのレコードを添付するにはどうすればよいですか?

これによりカウントが得られますが、このカウントで親レコードを添付する方法. つまり、出力は

pkParentId   Name      Count
  1           P1         2
  2           P2         1

助けてください助けてください助けてください?

4

1 に答える 1

1
SELECT P.pkParentId
      ,P.Name
      ,COUNT(*)
FROM tblParent P
INNER JOIN tblChild C ON P.pkParentId = C.fkParentId
WHERE P.pkParentId = @yourValueHere
GROUP BY P.pkParentId, P.Name
于 2013-04-24T14:00:22.100 に答える