私は3つのテーブルを持っています:
users
+---------+
|id | name|
+---------+
|1 | Tom |
|2 | Adam|
+---------+
skills
+------------+
|id |name |
+------------+
|1 |baking |
|2 |driving|
|3 |etc |
+------------+
users_skills
+-----------------+
|user_id |skill_id|
+-----------------+
| 1 | 1 |
| 1 | 2 |
| 2 | 1 |
| 2 | 2 |
| 2 | 3 |
+-----------------+
その結果、2人のユーザーがいます。
- トムは 1 と 2 のスキルを持っています
- Adam は 1 と 2 と 3 のスキルを持っています
スキル 1 と 2 を正確に持っているすべてのユーザーを取得したいので、Tom を取得します。それを達成する方法は?
スキル 1 またはスキル 2 を持つユーザーを獲得したい場合 - それは問題ではありませんが、それは :(
基本的に、ユーザーを users_skills テーブルに参加させようとしましたが、次のような結果が得られました。
+-----------------------+
|user_id |name |sill_id|
+-----------------------+
|1 |Tom | 1 |
|1 |Tom | 2 |
+-----------------------+
etc
したがって、2 つの行があり、ここで AND ステートメントを実現する方法がわかりません。