Nếu tôi hiểu điều này một cách chính xác, hãy log là để tự động ghi lại thông tin chi tiết về hành động của người dùng và profile nắm giữ thông tin chi tiết về người dùng.
Đối với log , dường như bạn đang cố gắng nắm giữ dữ liệu tóm tắt, dữ liệu đó sẽ cần cập nhật với mỗi lần gửi biểu mẫu. Tôi khuyên bạn chỉ cần chèn một mục nhật ký mới [ví dụ:log_id , log_date , profile_id , amount ] khi đệ trình và để tổng hợp vào báo cáo. Để kích hoạt tham gia từ log tới profile , chúng tôi bao gồm profile_id .
Đối với profile bảng, bạn có thể nên cho phép các mục nhập trùng lặp của first_name | last_name | dob và thử tìm một cách khác để biến chúng thành duy nhất (bằng cách sử dụng profile_id , hoặc qua email, hoặc số hộ chiếu).
Tôi không chắc về ý định của bạn đối với rowone , rowtwo , rowthree . Nếu bạn biết chúng là gì, hãy đặt tên chúng một cách rõ ràng; nếu chúng dành cho các mục lặp lại với số lần không xác định, hãy cân nhắc chuyển chúng sang một bảng riêng biệt (tức là chuẩn hóa).
Đối với báo cáo của bạn, sau đó bạn sẽ viết một truy vấn để tham gia vào log và profile các bảng với nhau, với sự tổng hợp (tức là GROUP BY với SUM và / hoặc COUNT trên các trường cần thiết. "Lượt truy cập" sẽ là COUNT trong số các mục nhật ký cho cấu hình đó, "Số tiền" sẽ là SUM của amount .