任意の順番をもったデータがあり、後からそのデータの順番を変えた場合にどのようにデータを更新すれば良いのか知恵をお貸しください。具体的には以下のような例です。
- 初期データが以下とする。
No | 名前 | 年齢 |
---|---|---|
1 | John | 20 |
2 | Bob | 19 |
3 | James | 21 |
4 | Jack | 20 |
- No.2のBobとNo.3のJamesの間にNickを追加し、Nickを新たなNo.3としJames以降はひとつずつNo.を増やす。
No | 名前 | 年齢 |
---|---|---|
1 | John | 20 |
2 | Bob | 19 |
3 | Nick | 22 |
4 | James | 21 |
5 | Jack | 20 |
この場合for loopなどで一つずつJames以降の値を更新する仕組みにしてしまうと、データが大量になった場合に処理量が増えてしまいます。この他にも、例えば並んだデータの順番を入れ替える上下ボタンのようなものを実装したいのですが、それも同じく時間がかかってしまう気がしています。
No | 名前 | 年齢 |
---|---|---|
1 | John | 20 |
2 | Bob | 19 |
3 | Nick | 22 |
4 | James | 21 |
5 | Jack | 20 |
- BobとNickの入れ替えボタンを押す。
No | 名前 | 年齢 |
---|---|---|
1 | John | 20 |
2 | Nick | 22 |
3 | Bob | 19 |
4 | James | 21 |
5 | Jack | 20 |
- NickとBobが入れ替わりNoが合わせて入れ替わる。
別途IDを用意して順番を管理するDBを作ることも考えたのですが結局同じことになる気がしていて悩んでおります。よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/03/12 14:55
2018/03/12 14:57
2018/03/13 01:11
2018/03/13 01:29
退会済みユーザー
2018/03/13 02:33
退会済みユーザー
2018/03/13 12:44 編集
退会済みユーザー
2018/03/13 12:44 編集
2018/03/15 01:03