MySQL дизайн базы данных полнотекстовый вопрос - PullRequest
0 голосов
/ 13 мая 2011

У меня есть устаревшая база данных mysql, и есть эта таблица с несколькими полнотекстовыми индексированными столбцами.В каждом из этих столбцов хранящиеся данные разделены пробелом.Это похоже на

token1 token2 token3

с функционированием полнотекстового индекса, код соответствует:

SELECT ... FROM mytable WHERE MATCH(column1) AGAINST('token1' IN BOOLEAN MODE) AND MATCH(column2) AGAINST('token2' IN BOOLEAN MODE) AND MATCH(column3) AGAINST('token3' IN BOOLEAN MODE) 

Теперь я хочу изменить этот конкретный дизайн в более нормализованном виде.Другая причина в том, что я хочу использовать таблицы innoDB вместо таблиц myism.Кажется, что процесс преобразует каждый столбец в одну таблицу атрибутов, а затем использует другую таблицу соединений, чтобы отметить отношение один ко многим между таблицей атрибутов и исходной таблицей.Это, вероятно, сильно усложнит SQL.Мне интересно, есть ли лучшее решение.

1 Ответ

0 голосов
/ 13 мая 2011

IMO, вы должны создать связь «многие-многие» между вашими таблицами.Таким образом вы получите лучшую производительность и большую гибкость.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...