繁体   English   中英

在一对多关系的许多方面更新内部列表索引

[英]Update internal list indexes on many side of a one to many relationship

我的表有一些数据损坏。

该表具有一对多关系的多面性,例如order和orderItem。

订单项在列表中,并且代码使用索引使它们保持排序。 索引有时会乱序,因此它不是0、1、2、3等索引条目,而是0、3、4、4或1、2、3、4、5等。

我有一个查询,可以确定发生这种情况的订单,但现在希望能够

我正在使用MySQL 5.077。

此链接为其他数据库提供了解决方案,但不确定如何采用MySQL。 http://haacked.com/archive/2004/02/28/sql-auto-increment.aspx

任何提示表示赞赏。

这个怎么样:

SET @RowCount = -1;

UPDATE <table>
SET    <index> = (@RowCount := @RowCount + 1)
WHERE  ...
ORDER BY ...;

如果需要按特定顺序重新分配索引,则可以使用ORDER BY。 我认为这行不通,但是对我有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM