【发布时间】:2015-04-24 05:49:47
【问题描述】:
我正在使用 apache solr,以及 drupal 7 apachesolr 的模块。 我们的一些查询非常自定义。
我一直在查看 solr 文档和关于 stackoverflow 的解释。 我想出了一个查询:
/select?q=&start=0&rows=20&fq=bundle:(message)&fq=sm_hashtags:(hashtags)&fq=(is_uid:(1 OR 2 OR 37 OR 38 OR 50 OR 166 OR 174 OR 198 OR 431 OR 499 OR 640 OR 642) AND is_privacy:(0)) AND -is_uid:(177 OR 189) AND is_status:(1)&fq=entity_id:{* TO 2666}&fl=tus_message_object,sm_hashtags,content,ts_search,is_privacy,is_status,is_uid&sort=entity_id+desc&wt=json&wt=json
但这是返回 NULL,我尝试了一些不同的方法,例如:
/select?q=&start=0&rows=20&fq=bundle:(message)&fq=sm_hashtags:(hashtags)&fq=((is_uid:(1+OR+2+OR+37+OR+38+OR+50+OR+166+OR+174+OR+198+OR+431+OR+499+OR+640+OR+642)+is_privacy:(0))-is_uid:(177+OR+189)+is_status:(1))&fq=entity_id:{*+TO+2666}&fl=tus_message_object,sm_hashtags,content,ts_search,is_privacy,is_status,is_uid&sort=entity_id+desc&wt=json&wt=json
但我不确定这是否正确。
我需要一个过滤器,允许 id 为 (is_uid) 且所有隐私为 0 的用户,但不允许 id 列表 -is_uid 和状态为 1 的用户。
【问题讨论】: