Исследования ключевых слов в innoDB MySQL - PullRequest
1 голос
/ 15 марта 2011

Я никогда не пишу на форумах, потому что где-то всегда есть ответ ... но я действительно не могу найти этот (возможно, я не смотрю на проблему хорошим способом).

Проблема : у меня есть таблица, содержащая "ключевые слова", связанные с "ярлыком". Я должен найти метку, связанную с входной строкой благодаря запросу.

Пример :

DB (table):
keywords| label     | weight
PLOP    | ploplabel | 12
PLOP    | ploplbl   | 8
TOTO    | totolabel | 4
...     | ...       | ...

Input string : "PLOP 123"

Should return: "ploplabel"

Первый инстинктивный запрос для частичного повторного поиска ключевых слов был:

SELECT label FROM table WHERE keywords LIKE "%inputstring%" ORDER BY weight DESC

Но, как вы, наверное, видели, мне нужно противоположное - что-то вроде:

SELECT label FROM table WHERE %keywords% LIKE "inputstring" ORDER BY weight DESC

Что-то, что мы можем сделать в MySQL (innoDB === нет полного текста)?

Спасибо, ребята

Приветствия

1 Ответ

0 голосов
/ 15 марта 2011

Создайте свою систему, используя innodb, и создайте полнотекстовую таблицу myisam для индексации ваших данных innodb. Таким образом, вы получаете все преимущества механизма innodb: кластеризованные индексы первичного ключа, блокировку на уровне строк и транзакции, дополненные полнотекстовыми возможностями одной или нескольких таблиц myisam.

Любой способ добиться полнотекстового поиска в InnoDB

...