SQL-删除最后一个元素并更新新元素的解决方法


SQL - Workaround for Removing Last Element and Updating New one

关于我的第一个基于SQL的项目。我想在我的网站上有一个"新闻"窗格。在那个新闻窗格中。我想展示有史以来最新的10条新闻,我会在网站上的每一个新变化后都像更新日志一样不断更新。

SQL-PHP只显示最新的10条新闻的解决方法是什么?我将如何更新数据库表(删除最旧的第10条条目),然后将最新的(第1条条目)添加到表中+更改ID(1-10)。

为此,您可以制作一个表格(例如新闻)。具有列ID content date

只需添加新闻并执行此操作。

SELECT * FROM News ORDER BY ID DESC LIMIT 10

然后,

把这个放到PHP ARRAY中,然后简单地在那里工作。

您很少希望在添加新条目后立即从数据库中删除旧值,为什么不直接对数据库的选择结果进行排序并限制行数,以便在未来的代码更改中更加灵活。

SELECT * FROM News ORDER BY id DESC LIMIT 10;

假设您有新闻的时间戳,您可能希望按此数据库值排序。因为这可以让你以后"增加"新闻文章,例如,如果你想让一篇编辑过的文章被认为是新的,你只需要更新时间戳,而不需要将行ID更改为更高的值。

SELECT * FROM News ORDER BY unix_time_stamp DESC LIMIT 10;

最后,如果你想清理你的新闻条目,我会单独在清理函数上进行,可能是在某种每小时或每天的cronjob上。