加入两个表以按结果获取组,包括两个表的列

时间:2014-08-21 19:16:02

标签: java mysql sql sql-server

我有两个不同的表,但是一个表有另一个表的主键。我在一个表上进行分组,但需要另一个表的结果中的特定列。

表1交易{ 列transaction_id, 列货币 } 表2付款{ 列payment_id, 列transaction_id, 列user_id, 专栏薪水 }

我想以这样的方式获得结果,即按user_id和currency分组。结果具有不同user_id,货币组合的薪酬总和。

例如

Transaction
transaction_id   currency
1                Dollar
2                Yun
3                Dollar

Payment
payment_id  transaction_id user_id pay
1           1              1       30
2           1              2       20
3           2              1       10
4           3              1       30

结果应该有:

User_id 1
Currency Dollar
Pay 30

user_id 1
Currency Yun
Pay 10

user_id 2
Currency Dollar
Pay 20

1 个答案:

答案 0 :(得分:4)

这是一个非常简单的Join

Select  P.User_Id, T.Currency, Sum(P.Pay)
From    Payment         P
Join    Transaction     T On T.Transaction_Id = P.Transaction_Id
Group By P.User_Id, T.Currency