zoukankan      html  css  js  c++  java
  • solr多条件查询(三)

    1.昨天记了一下三条件的“并且” “并且”(  &&   &&  )的情况,今天再来记一下 “并且”  “或者” 的情况。

     

    这里的或者情况,一定要搞清楚无论有多少情况,只要“或者”出现,他的级别和第一个输入框的级别是一样的,如果我们把查询的条件语句分一下级别,

    第一个输入框为solrSQL(主查询语句);

    第二个输入框为solrFQ1(子查询语句1);

    第三个输入框为solrFQ2(子查询语句2);

    级别:solrSQL > solrFQ1 > solrFQ2

    这样分一下级别很清楚了,方便我们拼接solr的查询语句,

    好了,直奔下一步。上面讲到的只要出现或者我们可以理解为:solrSQL= solrFQL2>slorSQL1。

    当然有些业务需求不同,可能是    solrSQL>solrFQ1=solrFQ2,这种需求为 在情况solrSQL的结果中,找出并且solrFQ1或者solrFQ2的情况,

    具体的查询代码(以举例说明):

    solrSQL:X_1457955996315_TM:"测试" + X_1457955996315_TM:"光盘"+ X_1457955996316_TM:"测试" + X_1457955996316_TM:"光盘"

    solrFQ:X_1457955996315_TM:"竣工" + X_1457955996316_TM:"竣工" 

    solrFQ2:

    2.并且  不含 的情况

    等级为:solrSQL = solrFQ1 != solrFQ2

     

    具体的查询代码(以举例说明):

    solrSQL:X_1457955996315_TM:"测试" + X_1457955996316_TM:"测试" 

    solrFQ:X_1457955996315_TM:"竣工" + X_1457955996316_TM:"竣工" NOT  X_1457955996315_TM:"光盘" NOT  X_1457955996316_TM:"光盘"

    solrFQ2:

    不知道大家有没有发现以上情况除了 并且- 并且- 并且 的情况  其他情况基本上用不到 solrFQ2,基本上是在solrSQ和solrFQ1进行处理。

    大家以此类推四级、五级.......N级的筛选情况。

  • 相关阅读:
    笛卡尔积
    Oracle语句以及各种知识点
    vue和angular的区别:
    vue的生命周期的理解
    使用递归实现一个数组的快速排序
    对css盒模型的理解
    对 超链接 的理解
    HTML语义化的理解
    HTML 、XHTML、H5的区别:
    mysql的使用相关问题
  • 原文地址:https://www.cnblogs.com/wudi521/p/5323027.html
Copyright © 2011-2022 走看看