поиск данных в таблице

braind

Client
Регистрация
10.10.2012
Сообщения
119
Благодарностей
11
Баллы
18
есть большая таблица на несколько сотен тысяч строк
в первой колонке - дата
вторая колонка - название магазина
третья колонка - остаток товара на складе
четвертая - продажи за день

Задача: вычислить колво продаж за день, то есть разницу между прошлым остатком и текущим. И записать это в четвертую колонку.
Пример таблицы

3.янв.22 - магазин_А - 500 - 0
3.янв.22 - магазин_Б - 300 - 0
3.янв.22 - магазин_В - 200 - 0
4.янв.22 - магазин_А - 485 - 15
4.янв.22 - магазин_Б - 250 - 50
4.янв.22 - магазин_В - 198 - 2

готовимся записать:
6.янв.22 - магазин_А - 400 - ?

Задача осложняется тем, что иногда забываю запустить проект и например за 5.янв.22 данных нет)
Сейчас делаю незамысловато - сортирую всю таблицу по дате от новой к старой, последняя дата сверху, дальше ищу по второй колонке нужный магазин, дальше высчитываю разницу и записываю.

Раньше таблица была в гугле, изза большого объема сортировка длилась очень долго. Сейчас перенес в Excel и тут сортировка очень быстрая, так что проблема исчезла, но все же думаю как оптимизировать поиск.

Рассматривал делать выборку из таблицы по магазину (взять строки, которые содержат текст), но выборку можно сделать только в список, там мешанина получается.

Ктонибудь может предложить более элегантное/правильное решение? Чувствую что оно есть)
 

Patcher

Client
Регистрация
06.05.2011
Сообщения
73
Благодарностей
67
Баллы
18
Разумнее всего в Вашем случае переписать логику и работать с (удаленной\локальной) базой SQL.
 

braind

Client
Регистрация
10.10.2012
Сообщения
119
Благодарностей
11
Баллы
18
Разумнее всего в Вашем случае переписать логику и работать с (удаленной\локальной) базой SQL.
Хороший вариант, понимаю, но... это всего лишь сбор данных для аналитики, и осваивать для этого SQL - это уже слишком.
Ладно, если вариантов нет, пусть так дальше и работает)
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)