Одной из приятных вещей, которые поддерживают реляционные базы данных, являются агрегатные функции, такие как count, sum, avg и т. Д. Но кажется, что если вы используете GAE, при вставке или обновлении записи вы должны вычислить и сохранить count, sum, avg и т. д. значения всей таблицы. Но что, если у вас много условных группировок? Данное лицо:
class Person {
@Id
Integer age;
String city;
}
Если я хочу
- общее количество человек
и
- средний возраст
Правильно ли, что каждый раз, когда я создаю, обновляю или удаляю человека, я также должен рассчитывать оба агрегата и сохранять их как отдельные столбцы в одной таблице. Если мне также нужны общие и средние значения для каждого города, следует ли хранить эти значения для каждого города также в виде отдельных столбцов в одной таблице?