2017-07-12 6 views
0

2人のテーブルの親と子SQL Serverの2つのテーブルを使用してポイントを合計する方法は?

Create table parent (ID int, ParentId int,Text varchar(20)) 
Create table Child (child1Id int, ParentId int, point int) 

ID ParentId Text 
1  NULL  Sony 
2  1   phone 
3  2   sale 
4  2   Rate 

child1Id ParentIdId point 
100   3    10 
200   4    20 

を作成します。私は、このような出力を必要とするこの

Select sum(b.point),a.ParentId,a.Text from parent A join Child B on a.ID =b.ParentId group by a.ParentId,a.Text 

のようなものを試してみました。

ID ParentId Text Point 
1  NULL  Sony null 
2  1   phone 30 
+1

でこれを行うことができますか? –

答えて

1

あなたは、いくつかのサンプルデータについてどのようにサブクエリ

SELECT p.ID 
    , p.parentId 
    , p.[Text] AS 'Text' 
    , cld.pointSum AS 'Point' 
FROM dbo.Parent AS p 
    LEFT JOIN (
     SELECT c.ParentId 
      , SUM(c.point) AS 'pointSum' 
     FROM dbo.Child AS c 
     GROUP BY c.ParentId 
    ) cld ON (p.ID = cld.ParentId) 
関連する問題