オブジェクト、タグ、および tag_relationships テーブルがあります。オブジェクトとタグにはそれぞれ id 列があり、tag_relationships は 2 つを接続します。
tag_relationships のサンプル (以下の例で使用):
+--------+--------+
| obj_id | tag_id |
+--------+--------+
| 1 | 1 |
| 1 | 2 |
| 2 | 1 |
| 2 | 3 |
| 2 | 4 |
+--------+--------+
AND 検索を実装して、人々がタグをフィルタリングできるようにしたいと考えています。指定されたすべての tag_id を持つ行を持つ obj_id のみが返されます。例えば:
サンプル入力: 1、3 (実際にはタグ名になりますが、ID に変換されます)
望ましい出力: 2
これは簡単なはずですが、私の人生では、これを行う簡単な方法がわかりません。現在、指定された tag_ids のいずれかを持つ tag_relationships のすべての行を含むテーブルを返し、PHP でそれらを並べ替えることを考えています。より単純な SQL のみの方法はありますか?