さまざまなデータを含む多くのテーブルを持つかなり大きなデータベースを構築しています。
ただし、各テーブルには、ビデオ タイトルやトラック タイトルなど、同様のフィールドがあります。
今私が直面している問題は、5 つ以上のテーブルでキーワードの一致を探すクエリを作成する方法です。各テーブルには 10 万行から 100 万行、場合によっては数百万行が含まれる可能性があることに注意してください。
テーブルごとに結合または個別のクエリを使用すると非常に遅くなると思うので、検索データを格納する別のテーブルを 1 つ作成することを考えました。
たとえば、次のようなフィールドを持つことができると思います。
id ---- username ---- title ---- body ---- date ---- belongs_to ---- post_id
このようにして、検索がはるかに高速になると思いますか、それとも完全に間違っていますか?
私が考えることができるこのアプローチの唯一の問題は、テーブルの一部から元のレコードが削除された場合、「検索」テーブルからもレコードを削除する必要があるため、このテーブルを管理するのが難しいことです。