程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> lucnene多條件搜索-lucene多條件搜索時or與and問題

lucnene多條件搜索-lucene多條件搜索時or與and問題

編輯:編程綜合問答
lucene多條件搜索時or與and問題

lucene版本:3.6
分詞器:ansj_seg-master

在lucene多條件搜索時,想根據兩個字段去做搜索,創建的Query如下所示

    Analyzer analyzer = new AnsjAnalysis();
    String paramsStr[] = new String[] { "CA0000001", "特惠" };
    String keys[] = new String[] {"code", "name" };
    BooleanClause.Occur occur[] = new BooleanClause.Occur[] { BooleanClause.Occur.MUST,
            BooleanClause.Occur.MUST};
    Query query = MultiFieldQueryParser.parse(Version.LUCENE_36, paramsStr, keys,
            occur, analyzer);

索引中確定有code為"CA0000001",name為"特惠"的數據,但就是為BooleanClause.Occur.MUST時找不到,如果為BooleanClause.Occur.SHOULD,則可以查詢到那條數據

請問各位要怎麼解決?

最佳回答:


should戴表兩個字段中必須有一個..must是必須都存在...你看看大小寫啥的..有可能建索引的時候全都小寫了

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved