0

ユーザーのいいねを fb アカウントから保存し、あるユーザーが別のユーザーのプロファイルにアクセスしたときに一般的ないいねを表示するアプリがあります。これには 2 つの方法があります。 1. データベースから user1 のいいね! を既に取得しているので、ID を次のような文字列に保存できます。

            $user1_likes="1,2,5,6,10,15,19";

次に、このクエリを使用して一般的ないいねを見つけます。

          SELECT name FROM user_like WHERE uid='user2' AND id IN ($user1)

または、このクエリを実行できます

        SELECT name FROM user_like WHERE uid='user2' AND id IN (SELECT id FROM user_like WHERE uid='user1')

最初の方法の問題は、user1 に多くのいいね! がある場合 (たとえば 4000)、mysql が処理するにはクエリが大きくなりすぎる可能性があることです。method2 の問題は、mysql が既に選択したものを再度選択する必要があることです。

この状況を処理するために何をお勧めしますか?

4

2 に答える 2