我的 mysql 表中有一个名字和一个姓氏字段。我不知道用户在一个字段中输入名字和姓氏的顺序。 我的全文索引位于 PERSONEN_VNAME 和 PERSONEN_NAME 所以他可以写“tester a”或“a tester”。
我找到了这两个人:
- 姓氏:TESTER,名字:Andrea
- 姓氏:测试员,名字:A
我尝试了这个查询:
SELECT PERSONEN_ID,PERSONEN_VNAME, PERSONEN_NAME FROM
PATIENT WHERE match(personen_name,personen_vname) against
('+tester* +a* ' IN BOOLEAN MODE)
查询仅返回测试者 Andrea,但不返回测试者 A。
为什么!?
编辑:sql fiddle :http://sqlfiddle.com/#!2/21f29/1
最佳答案
使用这个:-
SELECT PERSONEN_ID,PERSONEN_VNAME, PERSONEN_NAME FROM
PATIENT WHERE match(personen_name,personen_vname) against
('+tester* +a% ' IN BOOLEAN MODE)
查看此fiddle
关于Mysql全文检索查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16102634/