SQL根据不同的列对数据进行排序

SQL根据不同的列对数据进行排序

我需要一些有关SQL问题的帮助。我不确定是否可以这样做,但是我有这张桌子:
mysql - SQL根据不同的列对数据进行排序-LMLPHP

从此SQL语句获得:

SELECT distinct Account.Box, Account.Name, Account.Currency, Account.LastUpdated, Account.LastUpdatedBy, Transactions.Totals
FROM Account
LEFT JOIN Transactions
ON Account.AccountGUID = Transactions.AccountGUID


我想最后得到的是这个结果:
mysql - SQL根据不同的列对数据进行排序-LMLPHP

因此,基本上比较每个名称或货币组的总计,以获得每个组的最高总计。 (NULL值将替换为零)。

最佳答案

您似乎只想要一个group by

SELECT a.Box, a.Name, a.Currency, a.LastUpdated, a.LastUpdatedBy,
       MAX(t.Totals) as Totals
FROM Account a LEFT JOIN
     Transactions t
     ON a.AccountGUID = t.AccountGUID
GROUP BY a.Box, a.Name, a.Currency, a.LastUpdated, a.LastUpdatedBy;


注意:我还添加了表别名,以使查询更易于理解。

关于mysql - SQL根据不同的列对数据进行排序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31586473/

10-12 15:19