多くのユーザーを含むチームがあるゲームがあります。各チームにはさまざまな量のユーザーがいますが、どのチームにとっても、ユーザーの組み合わせによってそのチームはユニークになります。
このために 3 つのデータベース テーブルを作成しました。
Team User TeamUsers
t_id u_id t_id, u_id
ユーザー 1、4、5、および 7 が以前に一緒にチームに所属していた場合、そのチームのチーム ID を知りたいです。この場合、SQL はどのようになりますか?
私はこのようなことを実験しました:
SELECT t_id FROM teamusers WHERE u_id IN (users[1], ..., users[i])
GROUP BY t_id HAVING COUNT(t_id) = users[].length;
users
配列には、プログラムによって値が入力されます。これは正しいと思いますか?他に良い方法はありますか?