Я получил таблицу в sqlite3 с несколькими тысячами строк и хочу создать накопительную сумму за несколько дней для конкретных запросов.Я попробовал кое-что, что нашел здесь, но ничего не дало мне того, что я ищу.
Итак, вот часть моей таблицы в качестве примера значений:
id|killmailid|killmaildate|killmailtime|attallianceid|attcharid|attship
69124|69295810|2018-04-12|00:57|99007379|1129992577|11393
69125|69295810|2018-04-12|00:57|99007379|90279655|29990
69126|69298874|2018-04-12|02:07|99007379|2008187055|671
69127|69300565|2018-04-12|07:32|99007379|96282716|28665
69128|69300565|2018-04-12|07:32|99007379|96734967|11198
69129|69300911|2018-04-12|10:21|99007379|90154776|608
69130|69302387|2018-04-12|11:29|99007379|91488317|23913
Мы делаем несколькочто-то с данными из этой базы данных, но теперь мы хотим получить кумулятивное значение attcharid, использующего attship.
Первое, что я сделал, это получил attcharid DISTINCT WHERE attship = X, поэтому мой запрос выглядит так:
SELECT killmaildate, count(DISTINCT attcharid)
FROM killdata
WHERE killmaildate BETWEEN date('2018-04-12') AND date('2018-04-30')
AND attship = '23913'
AND attallianceid = '99007379'
GROUP BY killmaildate;
Что дает мне хороший список использования attcharid на каждом killmaildate.
2018-04-12|27
2018-04-14|13
2018-04-15|29
2018-04-16|10
2018-04-17|7
2018-04-18|34
2018-04-19|8
2018-04-20|39
Теперь часть, которая доставляет мне некоторые проблемы.Я хочу добавить эти attcharid вместе, НО это также должно быть DISTINCT, а это означает, что должны быть добавлены только новые attcharid в attship.
Итак, скажем, 2018-04-12 имеет 27 attcharid в attship, 2018-У 04-13 есть 13 аттаридов, но 10 из них уже были подсчитаны в первый день. Совокупное значение 2018-04-13 должно быть 30 вместо 40.
Я попробовал кое-что отсюда,что на самом деле не сработало, моя последняя попытка была что-то вроде:
SELECT killmaildate, sum(attcharid)
FROM ( SELECT killmaildate, count(DISTINCT attcharid) FROM killdata);
Но, конечно, это не дает мне того, кем я хочу быть.В конце я хочу сделать график attship в attallianceid, чтобы увидеть рост пользователей attship.