次のスキーマを使用して、同様の関心を持つユーザーを見つけようとしています..
USERS - ID name etc
Interests - ID UID PID
ここで、ID はインタレストの一意の ID、UIS はユーザー ID、PID は製品 ID です。SOで他の同様の質問を見てきましたが、正確な答えはありませんでした。
例 - John と同様の関心を持つユーザーを獲得することに関心があるとします。これは、2 つのテーブルがどのように見えるかを示しています ...
ID Name
11 John
12 Mary
13 Scott
14 Tim
ID UID PID
3 12 123
4 12 231
5 12 612
6 13 123
7 13 612
8 14 931
9 14 214
10 11 123
11 11 231
12 11 781
13 11 612
その順番で結果を出してほしいです。
私が興味を持っているユーザーと他のすべてのユーザーとの交差を設定することを考えていました。ユーザーが関心を追加したり、別のユーザーが追加されたりするたびに実行する必要があるため、これはあまり良い解決策とは思えません。これは小さなプロジェクトであり、現時点ではユーザーを 100 人に制限しています。上記のアプローチは 100 2時間かかるため、まったく効率的ではないと思います。
誰かが私を正しい方向に導くことができますか? 可能な解決策は何ですか。また、上記の制約で最適な解決策はどれですか。私はそれを使用できるかどうかを確認するためにANNを見ています。