gpt4 book ai didi

Mysql插入到表的中间而不是末尾

转载 作者:行者123 更新时间:2023-11-29 09:36:20 26 4
gpt4 key购买 nike

我是数据库新手。我从数据库表中删除了几行(直到表末尾)。现在,每次我通过 php 执行 INSERT 查询时,它都会在最后删除的行之后立即插入新行,并将先前的插入向下推一行。

enter image description here

如上图所示,通过查询从 2019-08-18(红色矩形)删除行:从 mytable 中删除日期 > '2019-08-18'

现在新插入的顺序错误,如上图中的绿色矩形所示。虽然日期为 2019-08-19 的行先插入,但它被推到表的末尾。

我做错了什么?

最佳答案

大多数关系数据库不会以任何特定顺序返回行除非您明确要求。他们只会做最简单的事情。通常这是插入顺序,或者可能是磁盘上的顺序,或者是上次使用的任何索引。它确实是任意的,甚至可能在同一数据库平台的不同版本之间发生变化。

“如果你关心,你就会问”是这里的工作原则。你没有问,所以 MySQL 认为你不在乎。

添加一个 ORDER BY 子句以获得可预测的订单。否则要为意外情况做好准备。

关于Mysql插入到表的中间而不是末尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57528262/

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