У меня возникают проблемы, даже зная, где начать такой запрос. В основном мне предоставляется база данных с определенными объемами, и мой босс хочет, чтобы я преобразовал эти данные SQL в представление. Я нахожусь над моей головой и не знаю, с чего начать или как выполнить то, что мне нужно выполнить :(
У меня есть таблица вроде этого:
record_id amount start_date end_date
1 20000 2018-01-01 2018-12-01
1 -15000 2018-02-01 2018-04-01
1 50000 2018-04-02 2018-06-30
И мне нужно, чтобы это выглядело так:
record_id amount start_date end_date
1 20000 2018-01-01 2018-01-30
1 5000 2018-02-01 2018-04-01
1 70000 2018-04-02 2018-06-30
1 20000 2018-07-01 2018-12-01
Таким образом, во всех перекрывающихся диапазонах дат мы вычисляем сумму и разделяем ее на новую строку. Как только этот диапазон дат закончится, мы вернемся к строке, которая продлилась до декабря. Это всего лишь один пример, и строки привязаны уникальным record_id
и будут иметь разные количества и диапазоны дат. Некоторые строки даже не перекрываются.
Как я даже начинаю писать такой запрос? Является ли MySQL правильным выбором для этого?
Я думаю, вам нужно разделить это.
Используйте MySQL для запроса данных, но то, что вы хотите сделать, требует довольно много обработки.
Я хотел бы изучить некоторые объектно-ориентированные языки (PHP, С#, Python), чтобы позаботиться обо всей логике попытки подсчета сумм.