Доброго всем дня. Пишу небольшое приложение, в этом приложении, человек на постоянной основе будет вводить определенные данные (может каждый день, может два раза в неделю, может раз в месяц) , допустим "общая сумма чего-то". Как я лучше всего это "общую сумму чего-то" запихивать в базу данных? У меня есть несколько таблиц - users, history, statistics. Информация добавляемая пользователем попадает в таблицу history и уже из неё путём простых математических действий и функций статистика на основе истории будет попадать statistics, чтобы позже выводить эту информацию пользователю. Вопрос состоит в следующем, как я могу отслеживать информацию из statistics, на дневной основе, тем самым предоставляя пользователю информацию о том, в какой день, какого года, какие у него были показатели из статистики. Своего рода, приложение с небольшой аналитикой.
Добавить поле c типом timestamp в statistics, а затем выборку по этому полю типа select * from statistics where `это поле` betweeen from_unixtime(`от даты-время`) and from_unixtime(`по дату-время`). Не?
Можно на statistics навесить триггер before insert и писать в поле timestamp
Я прочитал ответы, а задумался, а стоит ли мне вообще таблицу statistics делать, когда можно добавить число и дату в history и тогда по нему делать запросы?
А причем тут организация базы данных?
У вас в базе есть вся необходимая информация, вам нужно написать приложение, которое будет выполнять запросы к базе, и заниматься аналитикой.
Если в statistics информация появляется с помощью "простых математических действий и функций", то возможно этой таблицы и не нужно - делайте все действия на лету с помощью запросов.
Если получить стат.данные действительно просто, то нет смысла в отдельной таблице. Сделаете нужные индексы для быстродействия и будете готовить статистику по мере необходимости.