嗯,這聽起來像一個蹩腳的問題,我知道。這可能是最明顯的事情之一,但我一直在想出一個排序數據庫中的條目的好方法。表條目訂單
圖像表看起來像這樣:
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