Ако разбирам това правилно, log
е за автоматично записване на подробности за действията на потребителя и profile
съхранява данните за потребителя.
За log
таблица, изглежда се опитвате да съхранявате обобщени данни, които ще трябва да се актуализират с всяко изпращане на формуляр. Предлагам ви просто да вмъкнете нов запис в журнала [напр. log_id
, log_date
, profile_id
, amount
] при подаване и оставете обобщаването на отчета. За да активирате присъединяването от log
към profile
, включваме profile_id
.
За profile
таблица, вероятно трябва да разрешите дублиращи се записи на first_name
|last_name
|dob
и опитайте да намерите друг начин да ги направите уникални (или като използвате profile_id
, или по имейл, или номер на паспорт).
Не съм сигурен в намеренията ви за rowone
, rowtwo
, rowthree
. Ако знаете какви са те, тогава ги назовете изрично; ако са за елементи, които се повтарят неизвестен брой пъти, помислете за преместването им в отделна таблица (т.е. нормализиране).
За вашия отчет след това ще пишете заявка за присъединяване към log
и profile
таблици заедно, с агрегиране (т.е. GROUP BY
с SUM
и/или COUNT
върху необходимите полета. „Брой посещения“ ще бъде COUNT
от записи в регистрационния файл за този профил, "Сума" ще бъде SUM
от amount
.