Почему этот запрос SQL дает правильные результаты в моей локальной базе данных, но неверный результат в базе данных сервера? - PullRequest
0 голосов
/ 09 ноября 2011

В моей локальной базе данных MySQL этот запрос для поиска определенного слова "samy" дает мне правильные данные, состоящие из двух результатов:

SELECT * 
FROM members

LEFT JOIN member_details
ON members.id_members = member_details.id_member

LEFT JOIN company_details
ON members.id_members = company_details.id_member

WHERE MATCH(name, lastname, email, phone, adress, 
  website, company_name, company_phone_01, 
  company_phone_02, company_fax, company_email, 
  company_description, company_adress, company_website) 
AGAINST("samy*" IN BOOLEAN MODE)

Но когда я выполняю тот же запрос на сервереБаза данных MySQL, он возвращает все данные членов.Однако это работает, когда я делаю это:

WHERE MATCH(name, lastname, email, phone, adress, website) 
AGAINST("samy*" IN BOOLEAN MODE)

Что не так?

1 Ответ

0 голосов
/ 09 ноября 2011

Предположим: LocalDB - это MyISAM, Production DB - это InnoDB (который не поддерживает полнотекстовый поиск, необходимый для MATCH AGAINST)

...