У меня есть таблица с несколькими платежами, у которых есть дата и staff_id. Я хочу получить сумму платежей за каждый staff_id за каждый год.mysql select sum anually для нескольких пользователей
Например:
2011 - Staff1 - 66$
2011 - Staff2 - 24$
2012 - Staff1 - 86$
2012 - Staff2 - 0$
Моя идея была что-то вроде:
SELECT
staff_id,
YEAR(p.payment_date),
sum(p.amount)
FROM
payment p
WHERE
staff_id = (SELECT p.staff_id FROM payment p GROUP BY p.staff_id)
GROUP BY
YEAR(p.payment_date);
Это, очевидно, не работает, потому что (SELECT p.staff_id FROM payment p GROUP BY p.staff_id)
будет возвращать более одного значения.
Как я могу это сделать правильно?
См http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an -mcve-for-what-seem-to-me-to-be-a-very-simple-sql-query – Strawberry
схема этой таблицы была бы очень полезной здесь – Matthias
ОК, сделает это в будущем! – user7157554