私は3つのテーブルを持っています。
1 つは記事、もう 1 つは記事のタグ、および多対多の関係であるためこれらのテーブルをリンクするためのテーブルです。各記事にはいくつかのタグがあり、タグ テーブルを小さく保ち、データの整数を維持するために、それらをリンクするテーブルが必要です。
ここで、特定のキーワードのタグを検索し、これらのタグにリンクされている記事を選択する必要があります。これを行う最も効率的な方法は何ですか?テーブルの視覚的なプレゼンテーションは次のとおりです。
私は3つのテーブルを持っています。
1 つは記事、もう 1 つは記事のタグ、および多対多の関係であるためこれらのテーブルをリンクするためのテーブルです。各記事にはいくつかのタグがあり、タグ テーブルを小さく保ち、データの整数を維持するために、それらをリンクするテーブルが必要です。
ここで、特定のキーワードのタグを検索し、これらのタグにリンクされている記事を選択する必要があります。これを行う最も効率的な方法は何ですか?テーブルの視覚的なプレゼンテーションは次のとおりです。
記事/ドキュメントを検索する最も効率的な方法は、リレーショナル DB を使用しないことです。それはフォルテじゃない。たとえば、SOLRはそれに最適です。
しかし:
SELECT
a.id
FROM
article a
join
article_tags b
on
a.id = b.article_id
join
tags c
on
b.tag_id = c.id
where
c.tag_name = {$cleaned_input_tag_name}
c.tag_name = {$cleaned_input_tag_name}
あなたはまた、IN
声明またはLIKE
声明を出すことができます