iou3344 2023-01-22 20:46 采纳率: 85.2%
浏览 44
已结题

php7+mysql8中使用MATCH AGAINST进行搜索时的怪问题。

SELECT * FROM data_1 WHERE MATCH (毕业学校,家庭住址) AGAINST ('"交通大学" "北京" "西安"' IN BOOLEAN MODE)
很奇怪的一个问题,为什么这条语句返回的数据有很多(90%以上)没有一个字段里面的数据包含交通大学、北京、西安三个关键词的。我实在是看不出为什么会返回这些结果。
这条语句的意思应该是全文搜索毕业学校,家庭住址两个字段,只要任何一个字段包含交通大学、北京、西安三个关键词,就算符合。为此我还专门给关键词打上了双引号,可就这也返回一堆没相关的数据,真实无语了。。

  • 写回答

1条回答 默认 最新

  • a7464553 2023-01-22 20:58
    关注

    可能是查询语句有问题,可以尝试把毕业学校,家庭住址两个字段分开,比如:

    SELECT * FROM data_1 WHERE MATCH (毕业学校) AGAINST ('"交通大学"' IN BOOLEAN MODE) OR MATCH (家庭住址) AGAINST ('"北京" "西安"' IN BOOLEAN MODE)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 1月31日
  • 已采纳回答 1月23日
  • 创建了问题 1月22日

悬赏问题

  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图2.0 版本点聚合中Marker的位置无法实时更新,如何解决呢?
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题