Pokud tomu dobře rozumím, log
slouží k automatickému zaznamenávání podrobností o akcích uživatele a profile
obsahuje údaje o uživateli.
Pro log
Zdá se, že se pokoušíte uchovávat souhrnná data, která by bylo potřeba aktualizovat při každém odeslání formuláře. Navrhoval bych, abyste vložili nový záznam protokolu [např. log_id
, log_date
, profile_id
, amount
] při odeslání a agregaci ponechte na zprávě. Chcete-li povolit připojení z log
do profile
, zahrnujeme profile_id
.
Pro profile
tabulky, pravděpodobně byste měli povolit duplicitní položky first_name
|last_name
|dob
a zkuste najít jiný způsob, jak je učinit jedinečnými (buď pomocí profile_id
nebo e-mailem nebo číslem pasu).
Nejsem si jistý vašimi záměry pro rowone
, rowtwo
, rowthree
. Pokud víte, co to je, pak je výslovně pojmenujte; pokud jsou pro položky, které se opakují neznámo kolikrát, zvažte jejich přesunutí do samostatné tabulky (tj. normalizaci).
Pro vaši zprávu pak napíšete dotaz, abyste se připojili k log
a profile
tabulky dohromady, s agregací (tj. GROUP BY
s SUM
a/nebo COUNT
na potřebných polích. "Počet návštěv" bude COUNT
z položek protokolu pro tento profil, "Částka" bude SUM
z amount
.