我正在寻找一种有效的方法来对数据库中表中的插入项进行排序。
我正在考虑两种策略来实现它。
第一个策略:
要在表中添加订单列,并与每个“创建,更新和删除”(其成本很高的方法)保持一致,尤其是当我需要更改订单时,需要在更新元素之后更改所有元素。 / p>
item order
1 2
2 1
3 4
4 3
第二个策略:
为所有元数据创建meta_data表,并保存产品的订单和ID。 例如:
'产品'=> [{{id:1,order:2},{id:2:order:1},......]
我可以用每次修改替换元数据列表,但是当从表中选择数据时,这也是一种昂贵的方法。
还有没有更有效的方法。
答案 0 :(得分:0)
如果您坚持在每次编辑后正确订购,请创建如下视图:
CREATE VIEW ViewerData AS
SELECT * FROM Products
ORDER BY Id
然后将视图用作后端表,尽管您仍然可以更新实际表-通过使用视图而不是表,它会在每次重新查询时自动重新排序。