На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! информация о разделе
user posted imageДанный раздел предназначается исключительно для обсуждения вопросов использования языка запросов SQL. Обсуждение общих вопросов, связанных с тематикой баз данных - обсуждаем в разделе "Базы данных: общие вопросы". Убедительная просьба - соблюдать "Правила форума" и не пренебрегать "Правильным оформлением своих тем". Прежде, чем создавать тему, имеет смысл заглянуть в раздел "Базы данных: FAQ", возможно там уже есть ответ.

Модераторы: Akina
  
> Полнотекстовый поиск match against не хочет работать полноценно , match against отдает пустую выборку, если поиск не с начала строки
    Добрый день.
    Есть поле в таблице:
    ExpandedWrap disabled
        c_number CHAR (20) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL

    Для него создан индекс FULLTEXT.
    Делаю поиск по нему поиск. Текст в нем латиницей. Если делаю поиск с начала строки, то есть если запрос такой:
    ExpandedWrap disabled
      WHERE MATCH (c_number) AGAINST ('ABCD*' IN BOOLEAN MODE)

    То отдает правильную выборку. Но если поиск не с начала строки:
    ExpandedWrap disabled
      WHERE MATCH (c_number) AGAINST ('*BCD*' IN BOOLEAN MODE)

    То отдает пустую выборку.
    Текущий движок таблицы INNODB, читал, что на нем может не работать, менял на MYISAM, результат тот же.

    Версия mysql 5.7.

    В чем может быть проблема? Уже кучу всего перепробовал, ничего не помогает.
      WHERE c_number LIKE '%BCD%'
        Gonarh
        LIKE не для FULLTEXT, а для BETREE. Плюс, если с помощью LIKE делать выборку не с начала строки, то он не использует индексы и поиск занимает очень много времени.
          Gonarh
          Беру свои слова обратно) Хоть и это и перечет документации, но на таблице под движком InnoDB, с индексом FULLTEXT, для поля CHAR, LIKE '%ABC%' работает на ура!
          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script execution time: 0,0234 ]   [ 16 queries used ]   [ Generated: 29.03.24, 07:21 GMT ]