ID Member_ID Order_Price
1 1 20
2 1 30
3 2 30
4 2 20
5 3 20
6 3 20 大家好吗,我希望可以将同Member_ID的Order_Price加起来然后取最大值的结果
但问题出现,如果Order_Price有相同的只会出现一次
就好像Member_ID 1和2都是Order_Price 50SELECT SUM( Order_Price )
FROM order_record
GROUP BY Member_ID
ORDER BY SUM( Order_Price ) DESC
LIMIT 1 ;
上面的语句的确可以做到我要求的效果,不过出现相同值就bug了...
曾经有用max 和sum一起用,但研究很久也error
希望有高手可以帮手解答一下,万分感谢,一个小小的电脑系学生上
1 1 20
2 1 30
3 2 30
4 2 20
5 3 20
6 3 20 大家好吗,我希望可以将同Member_ID的Order_Price加起来然后取最大值的结果
但问题出现,如果Order_Price有相同的只会出现一次
就好像Member_ID 1和2都是Order_Price 50SELECT SUM( Order_Price )
FROM order_record
GROUP BY Member_ID
ORDER BY SUM( Order_Price ) DESC
LIMIT 1 ;
上面的语句的确可以做到我要求的效果,不过出现相同值就bug了...
曾经有用max 和sum一起用,但研究很久也error
希望有高手可以帮手解答一下,万分感谢,一个小小的电脑系学生上
是不是先求出每个组的总和;
SELECT SUM( Order_Price ) FROM order_record group by Member_ID ;
然后在这个总和里找出最大的?
select max(a) from (SELECT SUM( Order_Price )as a FROM order_record group by Member_ID) b;
(SELECT SUM( Order_Price )as a FROM order_record group by Member_ID) a1
inner join
(select max(a) as ma from (SELECT SUM( Order_Price )as a FROM order_record group by Member_ID) b) b1 on a1.a=b1.ma
where a=(select max(a) from (SELECT SUM( Order_Price )as a FROM order_record group by Member_ID)b1);那就再加个条件,找出那个表中比max(a)大的a。
如果再要C 就要inner join嗎?