这有点难以解释,所以我会一步一步地这样做。下面是我创建的表格。
id | item_1 | item_2 | item_3|
32 | 1 | 43 | 54 |
32 | 54 | 32 | 32 |
67 | 42 | 45 | 12 |
正如你所看到的,前两行有相同的id,我的目标是,得到第一行的总和(1 + 43 + 54),第二行的总和是(54 + 32) +32),然后添加具有相同ID的两行,并从最高到最低排序。有人可以帮我这个吗?
答案 0 :(得分:6)
我认为你在寻找的是
select
id,
sum(item_1+item_2+item_3) as item_sum
from yourtable
group by id
order by item_sum desc;
答案 1 :(得分:4)
我会这样做:
SELECT
ID,
SUM(Total) as TotalSum
FROM
(
SELECT ID, ITEM_1 + ITEM_2 + ITEM_3 as Total
FROM
MyTable
)
GROUP BY ID
ORDER BY TotalSum DESC