连接查询中使用SUM函数求某符合条件的值,该怎么解决

连接查询中使用SUM函数求某符合条件的值表一:test_cat结构cat_idcat_nameprd_id1test_11a2test_21b3test_3

连接查询中使用SUM函数求某符合条件的值
表一:test_cat   结构
cat_id             cat_name         prd_id      
    1                       test_1         1a
    2                       test_2         1b
    3                       test_3         1c
表二:test_table     结构
test_id             prd_id     value_1       value_2       value_3
    1                       1a               1                   1                   1
    2                       1a               1                   1                   1
    3                       1a               1                   1                   1
    4                       1b               2                   2                   2
    5                       1b               2                   2                   2
    6                       1c               3                   3                   3
    7                       1c               3                   3                   3

希望得到的结果为
cat_id             cat_name         prd_id       value_1       value_2       value_3
    1                       test_1         1a                   3                     3                   3
    2                       test_2         1b                   4                     4                   4
    3                       test_3         1c                   6                     6                   6



结果解释
在表一查询的基础上得到表二中属于该表中当前记录的SUM值

谢谢!有正确答案马上给分,分不多,重要的是心意




[解决办法]
--如果即使B表中沒有對應的數據,A表的數據也顯示的話
Select
A.*,
IsNull(SUM(B.value_1), 0) As value_1,
IsNull(SUM(B.value_2), 0) As value_2,
IsNull(SUM(B.value_3), 0) As value_3
From
test_cat A
Left Join
test_table B
On A.prd_id = B.prd_id
[解决办法]
鱼鱼的没有加group by

--换成下面的就好了
Select
A.cat_id, A.cat_name, A.prd_id,
IsNull(SUM(B.value_1), 0) As value_1,
IsNull(SUM(B.value_2), 0) As value_2,
IsNull(SUM(B.value_3), 0) As value_3
From
test_cat A
Left Join
test_table B
On A.prd_id = B.prd_id
group by A.cat_id, A.cat_name, A.prd_id