嗯,这听起来像一个蹩脚的问题,我知道。这可能是最明显的事情之一,但我一直在想出一个排序数据库中的条目的好方法。表条目订单
图像表看起来像这样:
entry_id | entry_data
-------------------------
1 | data1
2 | data2
... | ...
n | datan
entry_id当然是主键与AI选项,让所有条目都有一个唯一的ID。 现在。我想订购这些数据。说我希望entry_id = 2首先不改变它的entry_id。然后该表需要另一列来存储订单号。 我试过2种方法。
entry_order_no:这将基本保持物品的订单号。任何新项目将始终添加到最后。
left_id + right_id:这个方法被phpBB使用。不知道为什么它需要right_id?
我似乎更喜欢第一种方法,但如何在以后对数据进行排序。 让我们假设我想从最后一个位置新添加项目移动到第二个位置。 我一直在做的方式我正在使用索引表,其中索引是订单号。每个索引都包含具有entry_id的关联数组。这样,我“简单地”做了foreach循环与第二名下的所有条目的更新。这可能会工作几行。甚至可能是数十。但是当你有几百个时呢?这似乎非常低效。第二个看起来好一点。但有些东西仍然告诉我有更好的方法。
请确认。
那么你的建议现在看起来如此明显。我知道必须有一些简单的解决方案。 – 2009-06-06 14:56:56