Есть таблица
tbl_item
, в которой храниться основной контент:
tbl_itemid -> integer primary key
name -> varchar(250) not null
Есть таблица с ключевыми словами, связанная с ней many-to-many:
tbl_tagid -> integer primary key
name -> varchar(250) not null
rel_item_tagid -> integer primary key
item_id -> integer not null
tag_id -> integer not null
И таких связанных таблиц несколько. Некоторые связанны one-to-many, другие - many-to-many.
Необходимо организовать поиск записей из таблицы tbl_item по значению полей в связанных таблицах. Т.е. искомая строка может быть автором, разделом, ключевым словом и т.д.
И вот я думаю, как рациональнее это дело организовать. Каждый раз делать сложный запрос - не выход.
Может сделать таблицу со словами для поиска
tbl_search
и по расписанию заносить в нее все разделы, авторов, ключевые слова и т.д. и связать ее с таблицей
tbl_item
. И при поиске искать в ней нужное слово и возвращать связанные с ним записи из
tbl_item
?
Так правильно будет? Или поиск делается как то по другому?