我有一张这样的桌子
ItemsTable
item_id, cat_id, sort
----------------------
1 1 1
20 1 2
15 1 3
12 1 4
11 1 5
....
1521 1 1991
在我的程序中,每次显示页面时,它都会根据排序号拉下一个项目。所以,假设我刚刚显示 sort = 2,下一次页面将显示 item sort = 3(也许 sort 是一个坏名字)。
我想要做的是,一旦我拉出最后一个项目(排序 = 1991),我想重新更新该表中的项目并重新分配新的排序顺序。
像这样:
ItemsTable
item_id, cat_id, sort
----------------------
35 1 1
7 1 2
2 1 3
1521 1 4
700 1 5
....
5 1 1991
现在我的想法是我必须编写一个 SELECTS 记录的脚本,其中 cat_id = 1 对结果进行随机排序,然后我必须在 PHP 中创建一个循环来更新数据库 1001 次。在我看来,这似乎没有效率。
你们能提供更好的选择吗?使用 MySQL 执行此操作的最有效方法是什么?