gpt4 book ai didi

php - 如何创建一个主键按 DESC 排序的 MySQL 表,并在插入新行后保持这种状态?

转载 作者:行者123 更新时间:2023-11-29 13:54:44 25 4
gpt4 key购买 nike

我需要创建一个 InnoDB 表,用于向其中添加数据并不断获取添加到其中的最新 10 行。为了避免必须对 每个 SELECT 查询执行 ORDER BY 来获取最后 10 行,我希望表本身按主键DESC顺序排列,这样我就可以完全跳过ORDER BY,只需执行SELECT ... LIMIT 10,它应该自动提取添加到表中的最新 10 行。

我怎样才能做到这一点?是否与将 ORDER BY [PRIMARYKEY] DESC 添加到 CREATE TABLE 查询一样简单?即使在INSERT新行之后,表格是否仍继续DESC顺序排序?

最佳答案

RDBMS 永远不会对其管理的任何表中的行顺序提供任何保证。获得特定订单的唯一方法是索取。对于 MySQL 的情况,当主键处于自动递增模式时,行经常会按主键升序排序,但这不是一个保证的属性。

在查询中使用 ORDER BY 以获得所需的结果。

另一方面,如果主键类型是 BTREE(这是大多数引擎的默认类型),排序会更快。

排序方向isn't yet used on MySQL 5.5

关于php - 如何创建一个主键按 DESC 排序的 MySQL 表,并在插入新行后保持这种状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16042721/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com