我正试着和一组人做一个请求。
这是我的餐桌票的一个例子:
id DtSell Price Qt
1 01-01-2017 3.00 1
1 02-01-2017 2.00 3
2 01-01-2017 5.00 5
2 02-01-2017 8.00 2
我的要求是:
SELECT id, Price, sum(Qt) FROM ticket
GROUP BY id;
但不幸的是,返回的价格不一定是正确的;我想按dtsell的最后价格:
id Price sum(Qt)
1 2.00 4
2 8.00 7
但我不知道怎么做。你能帮助我吗?
提前谢谢!!
5条答案
按热度按时间u5rb5r591#
尝试此查询。
你的产出;
cdmah0mi2#
你可以用一个
group_concat()
/substring_index()
技巧:两个注意事项:
这取决于所用中间管柱长度的内部限制
GROUP_CONAT()
(很容易改变的限制)。它改变了
price
一根绳子。baubqpgj3#
你可以这样做:
0ejtzxu14#
您可能需要子查询,请尝试以下操作:
s5a0g9ez5#
您可以从按id分组的ticket中选择所有行(对数量求和),然后连接到每个id组具有最大dtsell的行(选择价格)。
http://sqlfiddle.com/#!9/574断路器9/8