ЗАДНИЙ ПЛАН:
Я разрабатываю функцию поиска, которая позволяет пользователям одновременно искать три объекта: классы, студенческие организации и события по имени.
MySQL 5.6 и Innodb будут использоваться на относительно небольшом сервере.
ТАБЛИЦЫ:
Поиск
entity_id (tiny_int)
entity_type (tiny_int)
full_name (varchar(255))
Index (Primary) -> entity_id, entity_type
Index (FULL TEXT INDEX) -> full_name
Класс (entity_type = 1)
class_id
ALL OTHER COLUMNS...
События (entity_type = 2)
event_id
ALL OTHER COLUMNS
Orgs (entity_type = 3)
org_id
ALL OTHER COLUMNS
ВОПРОС:
Is it appropriate to index the name of 3 seemingly similar but different data sets (class, event, organization) into one Поиск table through the use of entity_id, entity_type
Primary Key?
How would I go about doing a join on the Поиск table with the Class, Events, Orgs
tables? Is there a conditional I can do using the entity_type
?
Любая помощь или руководство получают большую оценку.