Часто необхідно підрахувати агрегатовані значення по деякому полю: максимальне чи мінімальне значення по заданому полю числового типу або дата/і час, середнє значення чи суму по полю числового типу. Ці задачі можна легко вирішити за допомогою агрегатних функцій SQL:
1) Max (NameField);
2) Min (NameField);
3) Sum (NameField) - сума по полю;
4)Avg (NameField) - середнє по полю ;
Якщо розраховуються агрегатовані значення по деякому полю за допомогою оператора Select то створюється тимчасова таблица (у робочому каталозі) з одного запису. Назва полів цієї таблиці найкраще задати за допомогою ключового полючи AS. Наприклад, необхідно одержати максимальне значення по числовому полю S у таблиці History. Це можна зробити за допомогою запиту: Select Max(s) As M From History. Для того, щоб записати це значення в змінну і скористатися ним, а потім переписати його в редактор Edit можна скористатися кодом в оброблювачі подій onClick кнопки:
v:=Query1.FieldByName('M').AsFloat;
Edit1.Text:=FloatToStrF(v,ffFixed,15,3);
Тут M ім'я поля(псевдонім поля) із запиту. Такий спосіб можна використовувати і при роботі з параметрами. Нехай є автоінкрементне поле N_RASH у таблиці Tovar і необхідно скористатися оператором Insert мови SQL для додавання запису. Цей оператор не працює з автоінкрементними полями в локальній версії. Тому запропонований спосіб можна використовувати й у даному випадку: для заповнення цього поля в новому записі можна знайти максисмальное значення по полю N_RASH і додати одиницю.