compass条件查询

public void ifFind() {
		
		CompassTemplate ct = new CompassTemplate(compass);
		ct.execute(new CompassCallbackWithoutResult() {
			protected void doInCompassWithoutResult(CompassSession session) throws CompassException {

				//有两种写法1
				CompassQueryBuilder queryBuilder = session.queryBuilder();
				CompassQuery a=queryBuilder.between("a", 8, 10, false);//不包括两边
				CompassQuery b=queryBuilder.between("b", 8, 10, true);//包括两边
				CompassQuery c=queryBuilder.ge("c", "1");//>=
				CompassQuery d=queryBuilder.gt("d", "1");//>
				CompassQuery e=queryBuilder.le("e", "1");//<=
				CompassQuery f=queryBuilder.lt("f", "1");//<
				CompassBooleanQueryBuilder CQB = queryBuilder.bool().addMust(a).addMust(b).addMust(c).addMust(d).addMust(e).addMust(f);
				//有两种写法2
				CQB.addShould(queryBuilder.term("g", "1"));
				CQB.addMust((queryBuilder.term("h", "1")));
				CQB.addMustNot((queryBuilder.term("i", "1")));
				System.out.println(CQB.toQuery().toString());
				
				//结果为:+a:{8 TO 10} +b:[8 TO 10] +c:[1 TO *] +d:{1 TO *] +e:[* TO 1] +f:[* TO 1} g:1 +h:1 -i:1
			}

		});
                               //我认为每次都进行组串查询比较方便
	}

有时间列出所有代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值