【solr】使用-取反时注意,-是表示排除,不能单独做条件用

1、solr的-表示取反、排除意思,比如说我要name不为a的数据,我们正常理解写法是-name:a,这是不对的,正确写法是(name:* AND -name:a)

2、演示

2.1、这是我们所有数据

我们要name不为a或者id为1的数据,一眼看出有4条数据符合要求

错误语法

type:test AND (-name:a OR id:1)

正确语法

type:test AND ((name:* AND -name:a) OR id:1)

原文地址:https://www.cnblogs.com/hzcya1995/p/13309191.html