gpt4 book ai didi

drag-and-drop - 一次重新排序 1000 行的最佳方法是什么

转载 作者:行者123 更新时间:2023-12-04 06:49:10 24 4
gpt4 key购买 nike

我在一个表中有 1000 条记录,其中包含从 1 到 1000 的位置字段。现在我想实现 1000 条记录的重新排序功能。假设,如果我将第 1000 条记录移动到第 1 个位置,那么第 1 条记录应移动到第 2 位,第 2 条记录移动到第 3 位,第 999 条记录移动到第 1000 条位置。

注意:我每页显示 20 条记录。

我已经使用 jqGrid 拖放插件实现了重新排序功能。使用这种技术一次更新 20 个记录位置非常简单。在 MySQL 端,我将触发 20 个更新查询来更新 20 个记录位置。

现在,我想在保存当前记录位置的位置列中有一个文本框字段。这样,用户可以通过在文本字段中输入位置编号将任何记录移动到任何位置,而不管拖放。假设,我在第 50 页,我想将第 1000 条记录移动到第 1 个位置,我将在第 1000 个位置文本字段中输入位置编号为 1。一旦输入位置编号,重新排序逻辑应该按照我说的进行在第一段。

现在,有人请告诉我如何一次更新 1000 条记录? MySQL 负载是多少?实现此功能的最佳方法是什么?

注意:我不想像在拖放功能中那样触发 1000 个更新查询(即避免 MySQL 死锁情况)。

感谢任何人提前提供帮助。

最佳答案

数百个更新有点荒谬。
尝试这样的事情:

UPDATE Records SET
SequenceNumber = SequenceNumber + 1
WHERE SequenceNumber >= @Lowbound AND SequenceNumber <= @UpperBound;

UPDATE Records SET
SequenceNumber = @Lowbound
WHERE ID = @SelectedId;

关于drag-and-drop - 一次重新排序 1000 行的最佳方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3368701/

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