3 つのテーブルがあり、そのうちの 1 つは他の 2 つの間のマップです。タグのリストを指定して、タグ付け可能なものにタグ付けされている他のすべてのタグを選択したいと思います。私の問題を視覚化してみます。
tags
--------------
1 | 'email'
2 | 'gmail'
3 | 'yahoo'
4 | 'hotmail'
5 | 'school'
6 | 'not used'
taggables
--------------------------
1 | 'test1@gmail.com'
2 | 'test2@yahoo.com'
3 | 'test3@hotmail.com'
4 | 'test4@gmail.com'
5 | 'test5@myschool.edu'
tagged
------
1, 1 /* test1@gmail.com --> email */
1, 2 /* test1@gmail.com --> gmail */
2, 1 /* test2@yahoo.com --> email */
2, 3 /* test2@yahoo.com --> yahoo */
3, 1 /* test3@hotmail.com --> email */
3, 4 /* test3@hotmail.com --> hotmail */
4, 1 /* test4@gmail.com --> email */
4, 2 /* test4@gmail.com --> gmail */
5, 1 /* test5@myschool.edu--> email */
5, 5 /* test5@myschool.edu--> school */
'email', 'gmail'
そのため、結果セットのリストは'yahoo', 'hotmail', 'school'
. 私はこれにあまりにも多くの時間を費やしたので、助けが必要です。