Howdie,
我正在尝试编写一个基于测试对其用户进行预测的系统。部分原因我只希望数据库存储最近的500个值。
我正在存储的当前字段是
ID (Auto increment)
USERID (the users unique ID)
SCORE(an integer)
在理想的世界中,我希望系统在唯一用户在数据库中获得超过500条记录时删除最旧的行。是否有一种简单的方法可以在PHP中自动执行此操作而不会使代码真的很重?
答案 0 :(得分:1)
您必须存储日期/时间字段,以便确定超过1个月的内容,然后它变得如此简单:
DELETE FROM yourtable
WHERE timestampfield > (NOW() - INTERVAL 1 MONTH)
如果你在auto_incremented ID中没有任何“空白”,你可以做一个非常简单的(并且非常容易出错):
INSERT INTO .... <--add new record
DELETE FROM yourtable WHERE (id < (INSERT_ID() - 500))
但这将非常不可靠。