@SmartSi 2016-07-05 03:36 采纳率: 0%
浏览 13754

[ElasticSearch] 中文字符串精确搜索 term 搜不到结果

    public static void termQuery(Client client, String index, String type) {

        // Query
        QueryBuilder queryBuilder = QueryBuilders.termQuery("college", "计算机学院");

        // Search
        SearchRequestBuilder searchRequestBuilder = client.prepareSearch(index);
        searchRequestBuilder.setTypes(type);
        searchRequestBuilder.setQuery(queryBuilder);

        // 执行
        SearchResponse searchResponse = searchRequestBuilder.execute().actionGet();

        // 结果
        queryResult(searchResponse);
    }

搜索college为计算机学院 原始数据中有,却搜不到结果

原始数据:

11:34:22.674 [main] INFO  com.sjf.open.api.Search - ----------hit source: id 9 source {college=计算机学院, school=西安电子科技大学, sex=boy, name=廖力生, age=21}
11:34:22.677 [main] INFO  com.sjf.open.api.Search - ----------hit source: id 2 source {college=通信学院, school=西安电子科技大学, sex=boy, name=李源一, age=19}
11:34:22.677 [main] INFO  com.sjf.open.api.Search - ----------hit source: id 4 source {college=电子工程学院, school=中国科技大学, sex=girl, name=王俊辉, age=21}
11:34:22.678 [main] INFO  com.sjf.open.api.Search - ----------hit source: id 1 source {college=计算机学院, school=西安电子科技大学, sex=boy, name=徐欣, age=21}
11:34:22.678 [main] INFO  com.sjf.open.api.Search - ----------hit source: id 3 source {college=电子工程学院, school=西安电子科技大学, sex=boy, name=陈哲超, age=18}
  • 写回答

4条回答 默认 最新

  • w651913943 2018-12-27 08:50
    关注

    这个坑我用6.5 的时候踩过
    这样解决的

    QueryBuilder queryBuilder = QueryBuilders.termQuery("college.keyword", "计算机学院");

    别的版本没有试过不太清楚

    评论

报告相同问题?

悬赏问题

  • ¥30 Matlab打开默认名称带有/的光谱数据
  • ¥50 easyExcel模板 动态单元格合并列
  • ¥15 res.rows如何取值使用
  • ¥15 在odoo17开发环境中,怎么实现库存管理系统,或独立模块设计与AGV小车对接?开发方面应如何设计和开发?请详细解释MES或WMS在与AGV小车对接时需完成的设计和开发
  • ¥15 CSP算法实现EEG特征提取,哪一步错了?
  • ¥15 游戏盾如何溯源服务器真实ip?需要30个字。后面的字是凑数的
  • ¥15 vue3前端取消收藏的不会引用collectId
  • ¥15 delphi7 HMAC_SHA256方式加密
  • ¥15 关于#qt#的问题:我想实现qcustomplot完成坐标轴
  • ¥15 下列c语言代码为何输出了多余的空格