サイト内の各ユーザーが、入力する項目のカンマ区切りのリストを入力できる場合 (事前に決められたリストからではなく!)、ユーザーごとにそのリストをどのように MySQL に保存して、ユーザー間で項目を照合できるようにする必要がありますか?同じアイテム?
彼らが入力したコンマ区切りの文字列を
VARCHAR
DB に保存すべきではないことはわかっていますが、どのように保存すればよいのでしょうか?ItemsList
各行が a である新しいテーブルを作成する必要がありUserID -> ItemName
ます (たとえば、ユーザー ID 101が「マッチ、ガン、アルコール」と入力した場合、3 行をItemsList
asに追加します101 -> 'Matches', 101 -> Gun, 101 -> Alcohol
) ?その場合、
PRIMARY KEY
そのテーブルには何を使用する必要がありますか?indexes
アイテムの検索とマッチングの両方をできるだけ速く行うには、何を設定する必要がありますか?最後に、別のユーザーと共通のアイテムを少なくとも 1 つ持つすべてのユーザーを見つけるには、どのクエリを使用する必要がありますか?