对同一张表先分组聚合,再连接left join拼接其中的一条数据

对同一张表先分组聚合,再连接left join拼接其中的一条数据

SELECT a.account,a.money,b.recharge,b.rechargetime from (
SELECT account,SUM(recharge) money FROM tbl_account_recharge_record WHERE location = ‘天津’
GROUP BY account ORDER BY money DESC)a
LEFT JOIN
( select * from tbl_account_recharge_record WHERE location = ‘天津’ GROUP BY account )b
on a.account = b.account
ORDER BY money DESC

结果如图:

对同一张表先分组聚合,再连接left join拼接其中的一条数据
之前left join 右表直接写成tbl_account_recharge_record了。导致返回很多个数据。我理想中的数据返回就是每个account,充值总额,再加上任意一条充值的信息。正确写法是 LEFT JOIN
( select * from tbl_account_recharge_record WHERE location = ‘天津’ GROUP BY account )b!!!