• solr多条件查询(二)


    由于现在的 需求很变态需要N多条件的叠加,本人就用了一天时间摸索加求助,终于参透出这个q和fq的强大之处。

    需求如下图,有三种关系:并且、或、不含

    1.如果是或者也就是改变的q的查询条件;

    2.如果是并且改变的是fq的查询条件;

    3.如果是不含也是改变fq的查询条件;

    起初的做二级查询用到了一个fq,举例:查询题名为“测试”并且题名为“改造”的数据,如果你已经入门solr的基础,这个并不难,首先q先查出题名为测试的,fq进行筛选,查询出测试下面的含有改造的信息。

    三层就想的有点异想天开了 ,起初我是在原来的fq加了条件为机房的 ,怎么查都是错误的。跟上面的查询结果一样,

    后来查资料,问大牛,才知道,小伙子你想的有点多了,三层就是在加一个fq。诧异!吃惊!,试了一把果然如此。

    总结一下,超过二次筛选,在加一个fq。相当于Java再new一个对象进行再次筛选。

    所以以上需求正确的简单查询:

    q:测试

    fq:改造

    fq:机房

    千万别跟我第一想法一样

    q:测试

    fq:改造 + 机房

    好了总结到此!感谢读贴小伙伴。~~~~

  • 相关阅读:
    requirejs小记
    backbone入门
    简单的javascript/css slider滑动条
    又一个简单试用的javascript Slider插件
    Hdu3926 Hand in Hand
    今天OJ升级的学习内容总结
    非常实用的PHP代码片段
    第一次面试经历
    PHP Filesystem 函数
    MFC实现 MSN QQ 窗口抖动
  • 原文地址:https://www.cnblogs.com/wudi521/p/5320310.html
Copyright © 2020-2023  润新知