基本上我有一个用户可以上传和共享文件的网站。我希望如此,以便用户可以跟踪过去30天内的下载次数,并能够分别查看这些内容中的每一天。
我正在考虑创建一个包含31列的表,其中1列为id,其余为day1,day2,day3等...每天更新此表将1天的下载量移至当天之前。
我的问题是这会有效还是有更好的方法来解决这个问题?
答案 0 :(得分:3)
你最好有一个链接到你的文件表的下载表。每次下载文件时,下载表都会创建一条记录。
id
file_id
ip_address
user_agent
created
等。
然后编写一个查询来确定每天发生的下载量是一项非常简单的任务。
答案 1 :(得分:1)
为了准确确定符合条件的已用天数,我建议您确定当前日期与提交记录的日期之间的差异。利用这种方法,您可以确定应该包含哪些内容以及不应该包含哪些内容,而无需复杂的列结构。
答案 2 :(得分:0)
这不会特别有效。我希望有一个更好的方法是有一个表:
UniqueID
FileID
DownloadTimeStamp
并连续记录每次下载。通过适当的索引(FileID,DownloadTimeStamp),可以即时进行分析。
根据您每天的意思(在某些全球时间,如UTC或用户的时区),您可以将这些内容推广到:
FileID
Day
Count
如果出现性能问题,请减少分析工作。