重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

MYSQLで複数のユーザーと、複数のアイテムがあり、アイテムには表示順序を設定できるとします。
レコードの例は次のようになっています。

「ユーザーID / アイテムID /表示順序」

例:
ユーザー1 / アイテムA / 1
ユーザー1 / アイテムB / 2
ユーザー1 / アイテムC / 3

表示順序は1から始まる連番で管理されていて、数字の大きなものから順に並びます。
各ユーザーが持つアイテムの種類はバラバラで、何も持っていないユーザーも存在します。

上の例の場合ユーザー1はアイテムABCを持ち、表示順序はCBAです。

そこで、あるユーザーのアイテムの順序を振り直す場合、一度そのユーザーのレコードを全て削除してから新規に振り直そうと思っていますがこのやりかたは正しいでしょうか?
それともUPDATEをうまく使って書き換えるほうがいいのでしょうか?

A 回答 (1件)

普通はUPDATEを使うと思います。



処理時間が問題にならないのであればDELETE,INSERTでも良いとは思いますが、
UPDATEに比べてかなりコストが大きいと思います。
    • good
    • 0
この回答へのお礼

回答有り難うございます。

たとえばCを失った代わりにDが追加されたとしたら、CをDELETEし、DをINSERTした上で他のアイテムを個々にUPDATEするという手順になりますか?

お礼日時:2013/08/12 19:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す