php 数据库 - 为每个用户存储 30 天的数据
Posted
技术标签:
【中文标题】php 数据库 - 为每个用户存储 30 天的数据【英文标题】:php database - storing 30 days of data for each user 【发布时间】:2013-03-29 18:38:02 【问题描述】:我正在尝试建立一个数据库来记录每个用户最近 30 天的信息。数据将每天记录一次(即通过 cron 作业),并将成为项目的值(即不断变化)。
构建这个的最佳方式是什么?我正在考虑设置一个表,然后将 30 天存储在表中并删除第 31 天,因为我在 cron 作业中添加了新的一天(并将所有其他天移到了一天),但这似乎不是很高效..
感谢您的帮助。
【问题讨论】:
【参考方案1】:您可以做的是存储每个条目的当前日期,然后在您的 cron 作业中,删除所有超过 30 天的条目。
例如(使用 mysql),
DELETE FROM user_statistics WHERE DATEDIFF(NOW(), date_of_record) > 30;
【讨论】:
【参考方案2】:使用自己的日期存储用户数据,并在超出限制时删除最旧的数据。无需改变任何东西。
【讨论】:
【参考方案3】:我会使用DATE
列按实际日期记录。您可以在 MySQL 中轻松查询“过去 30 天”。
至于清除,cron 作业也可以很容易地删除任何超过 30 天的内容。或者,由于很容易忽略超过 30 天的任何内容,您甚至可以选择不删除较旧的记录(至少不是每天都删除)。
【讨论】:
以上是关于php 数据库 - 为每个用户存储 30 天的数据的主要内容,如果未能解决你的问题,请参考以下文章