2012-04-01 8 views
1

テーブルusersプライマリインデックスuserIdのテーブルがあります。現在、各ユーザはフィールドarrayOfRelatedUserIdsを持っているので、いずれかのユーザが他のいくつかのユーザと関係を持つことができます。usersarrayJSONフォーマットです)。これは私が最善の解決策ではないことを知っており、これを実行するより良い方法がありますが、私は方法を理解していません。配列なしでこれをどうすればできますか?それぞれuserが複数のusersと一度に関連するように、これを設計する「正当な」方法は何ですか?MySQLと一対一の関係を理解する

答えて

8

2列に別のテーブルrelated_users作成:

  1. userId
  2. related_userId

そしてでき、編集することまたは行を削除するには、各行

+0

として関係とIDフィールドを格納します。 –

+1

@OZ_: '(userId、related_userId)'の複合主キーはここで人工キーを避けるのに役立ちます – zerkms

+0

'ID'キーは" WHERE .. AND .. "なので純粋なCRUDを書く能力を与えます。すべてのエンティティ。 –

関連する問題