私はessays
と呼ばれるテーブルを持っています。テーブルはparagraphs
というテーブルと1対Mの関係になっています。したがって、paragraphs
テーブルにはessay
を指す外部キーがあります。複数行にわたるMySQLフルテキスト検索
現在の問題は、私が検索すると、MySQLは個々の段落を調べますが、複数の段落が同じ本を指すことはできないということです。
私の全文検索は、次のようになります。
SELECT DISTINCT *,
MATCH(essays.title) AGAINST('my search') as tscore,
MATCH(paragraphs.content) AGAINST('my search') as cscore
FROM essays
INNER JOIN paragraphs ON paragraphs.essay_id = essays.id
WHERE
MATCH(essays.title) AGAINST('my search')
OR MATCH(paragraphs.content) AGAINST('my search')
ORDER BY (3 * tscore + cscore) DESC
エッセイのすべての段落全体で何かのためのMySQLの検索を行うと、ちょうどそのエッセイを返す方法はありますか?
'GROUP BY essays.id'を使用しますか? –