从多行中汇总列,列等于其他表中的列

时间:2015-10-18 21:18:48

标签: mysql sum row

我想在表格2中为table1中的每个 userID 显示 amount 的前10个总和值,并匹配transaction_id。

dc_comments

  • userID,int(11)
  • transaction_id,int(11)

dc_donations

  • transaction_id,int(11)
  • amount,int(11)

我将如何做到这一点?

示例:

dc_comments:

userid, transaction_id
     1, 777
     2, 450
     1, 823
     3, 234

dc_donations:

transaction_id, amount
           777,  3
           450,  5
           823, 40
           234, 10

输出应为:

 43
 10
  5

1 个答案:

答案 0 :(得分:0)

我得到了朋友的帮助,这是解决方案

mysql_query(" SELECT name,userID,SUM(amount)as total         来自dc_comments         LEFT JOIN dc_donations ON(dc_comments.transaction_id = dc_donations.transaction_id)         GROUP BY userID ORDER BY总DESC限制10");