我正在尝试编写一个查询,查找每次在特定日期范围内发生在我的表中的同一个人。然后它将这个人分组并且将他们的花费总计在特定范围内。如果他们的消费习惯大于X金额,则在指定的日期范围内为此人返回每一行。不仅仅是分组总量。这是我到目前为止:MySQL - 组和总数,但返回每个组中的所有行
SELECT member_id,
SUM(amount) AS total
FROM `sold_items`
GROUP BY member_id
HAVING total > 50
这是检索正确的总和返回成员花费超过50美元,但不是每一行。只是每个成员的总数和他们的总数。我目前正在查询整个表格,我没有添加日期范围。
不可能。当你分组时,该组的所有成员行都折叠成一个代表性的行。如果你想要原始成员行,那么你不能使用'group by'。 – 2015-01-26 20:23:32
同意。这是您希望在查询上具有应用程序层的位置,以提供报告所需的小计和细分。 – PaulProgrammer 2015-01-26 20:25:26
您可以'与这个子查询加入原始表来返回所有相关的行。 – Barmar 2015-01-26 20:33:14