1

多くのユーザーを含むチームがあるゲームがあります。各チームにはさまざまな量のユーザーがいますが、どのチームにとっても、ユーザーの組み合わせによってそのチームはユニークになります。

このために 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配列には、プログラムによって値が入力されます。これは正しいと思いますか?他に良い方法はありますか?

4

1 に答える 1