私はmySQLの知識で壁にぶつかりました。
それをより明確に説明するために、ここに私のテーブル(タグのかなり標準的な設定)があります:
keywords
---
keyword_id (ai)
keyword
-
topics_keywords
---
t_k_id (ai)
topics_id
keyword_id
-
topics
---
topics_id
etc
ここで、keywords
テーブルに次のエントリがあるとします。
keyword_id || keyword
1 || baseball
2 || sports
また、topics_keywordsには次のエントリがあります。
t_k_id || topics_id || keyword_id
1 || 1 || 1
2 || 1 || 2
3 || 2 || 1
だから多分あなたは私がやろうとしていることを見ることができます。
誰かが「野球」と入力した場合、関連するキーワードを共有するトピックの数をカウントしたいと思います。上記の例では、baseball
とsports
は両方ともの共有キーワードですtopics_id: 1
。
したがって、誰かが入力した場合、トピックを共有するbaseball
名前の付いた他のトピックが1つあることを示すcount()を取得するにはどうすればよいですか?sports
baseball