با سلام
ديتابيسي دارم كه شامل متن هزارها كتاب است بطوري كه حجم ديتابيس با ايندكس آن بيش از 5 گيگابايت هست.
حالا ميخواهم عبارتي را در متن همه كتابها جستجو كنم.
فعلا دارم از اين كويري استفاده ميكنم:
set @search = '%محمد رسول الله%';
select `book_id`, `title` from `search` where `title` like @search
union
select `book_id`, `title` from `search` where `info` like @search
union
select `book_id`, `title` from `search` where `toc` like @search
union
select `book_id`, `title` from `search` where `text` like @search
union
select `book_id`, `title` from `search` where `footnote` like @search
ولي اين كويري در حدود 77 ثانيه زمان ميبرد.
علت استفاده از union براي نمايش بر اساس اولويت است.
آيا روش بهتري براي جستجو در ديتابيسهاي حجيم وجود دارد؟
با تشكر.