是否可以在总和组上订购带有条件的退货行?
例如,我的数据是:
Id Price Product Category
1 12 Book1 Car
2 1 Book2 Art
3 8 Book3 Car
4 7 Book4 Art
5 11 Book5 Car
6 24 Book6 Bridge
由于汽车书籍的总和为31 ,艺术书籍的总和为8 ,桥书的总和为24 ,I我希望得到以下结果(Car first,然后是Bridge,然后是Art):
Id Price Product Category
1 12 Book1 Car
3 8 Book3 Car
5 11 Book5 Car
6 24 Book6 Bridge
2 1 Book2 Art
4 7 Book4 Art
另一方面,我想按标准添加其他订单(在示例中,“产品”标准)。 我使用ORDER BY和GROUP BY尝试了很多东西,但它总是聚合我的结果。
感谢您的帮助!
答案 0 :(得分:6)
你可以这样做:
select
l.* from table l
inner join (
select category, sum(price) as total from table group by category
) r
on l.category = r.category
order by r.total, <some_other_column>
这是我遵循的程序: