July 16th, 2013

ёжик

Базы данных - многомерные индексы, мгновенные суммы по отрезкам, кубам и т.п.

Много лет (с 1993) работаю бухом и параллельно интересуюсь программированием. Накопились не только вопросы, но и ответы. Пока уволился и не определился с работой - наведу порядок в голове.  В этой заметке расскажу о базах данных и своем удивлении, что еще не реализован (хотя это можно сделать!) механизм мгновенной суммы чисел по всем записям, расположенных в определенном порядке (по времени, например) от одной произвольной записи до другой произвольной записи.

Итак, в бухгалтерии (да и в электронных таблицах, логистике, науке и везде) часто надо вычислить суммы (прихода, расхода и т.п.) по некоторым объектам учета от момента А до момента Б. Запускаем прогу и она бухтит и считает итог. Фактически она это делает перебором - получив нужную выборку данных и перебирая их запись за записью прибавляет очередное число к вычисляемому итогу.

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

Collapse )