Я пытаюсь получить в общей сложности каждый день/магазин продаж с помощью следующего запроса:Mysql результат сумма дублируется
SELECT st.name, SUM(sa.val), sa.sale_date FROM sales sa
INNER JOIN employee e ON sa.employee_id
INNER JOIN store st ON e.store_id
GROUP BY st.name, sa.sale_date
ORDER BY sa.sale_date
Но он генерирует дублированные результаты для SUM.
+---------+-------------+------------------------+
| name | SUM(sa.val) | sale_date |
+---------+-------------+------------------------+
| Store 1 | 800 | July, 29 2015 00:00:00 |
| Store 2 | 800 | July, 29 2015 00:00:00 |
+---------+-------------+------------------------+
Оно должно быть:
+---------+-------------+------------------------+
| name | SUM(sa.val) | sale_date |
+---------+-------------+------------------------+
| Store 1 | 100 | July, 29 2015 00:00:00 |
| Store 2 | 300 | July, 29 2015 00:00:00 |
+---------+-------------+------------------------+
Fiddle: http://sqlfiddle.com/#!9/0faa35/40
Возможно, вам необходимо где условие 'где sale_date =«2015-07-29» 'и удалить' sale_date' из группы по ..., если это это не то, что вы ищете, тогда вам нужно уточнить вопрос немного больше. –
Не давая повторяющихся результатов, он дает правильные результаты в соответствии с группой по логике, если вам нужно получить сумму 29-го, а затем поставить предложение where –