0

在我的本地 MySQL 数据库中,搜索特定单词“samy”的查询为我提供了由两个 2 个结果组成的正确数据:

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)

出了什么问题?

4

1 回答 1

0

猜测:LocalDB 是 MyISAM,Production DB 是 InnoDB(不支持 MATCH AGAINST 所需的全文搜索)

于 2011-11-09T18:21:07.247 回答