首页 > 解决方案 > 以最少的数据库更新操作重新排序字符串数组

问题描述

可以说我存储了一些这样的有序字符串:

   1 apple
   2 banana
   3 pear
   4 mango
   5 cantaloupe

现在我需要插入应该出现在位置 4 的草莓。OFC 我可以通过更新数字索引轻松做到这一点,例如:

   1 apple
   2 banana
   3 pear
   4 strawberry
   5 mango
   6 cantaloupe 

但问题是 - 如果我需要将此位置更新存储在数据库中,我现在需要存储 3 个操作:

   a) UPDATE index = 6, WHERE index=5  
   b) UPDATE index = 5, WHERE index=4  
   c) insert strawberry at position 4  

这对于小型列表来说很好,但在大型列表中,我最终会进行大量的位置更新操作。

有没有更有效的方法?也许使用数字以外的东西?

标签: algorithmsorting

解决方案


推荐阅读