您可以通过将构面字段与构面查询相结合来实现这一点。
将这些添加到您的查询中:
&facet=true
&facet.field=author
&facet.query=author:("Hemmingway" OR "Stephen King")
返回的构面将如下所示:
facet_counts: {
facet_queries: {
"author:("Hemmingway" OR "Stephen King")" : 18
}
facet_fields: {
author: {
"Hemmingway" : 8,
"Stephen King" : 10,
"Edgar Allan Poe" : 20,
"Richard Bachman" : 5
}
}
}
您还可以向构面查询添加“别名”。改变这个
&facet.query=author:("Hemmingway" OR "Stephen King")
到
&facet.query={!ex=dt key="Hemmingway"}author:("Hemmingway" OR "Stephen King")
方面查询输出将是:
facet_queries: {
"Hemmingway" : 18
}
我不确定您是否可以合并 Solr 的两个输出字段(facet_queries 和 facet_fields),但从任何客户端执行此操作都应该是直截了当的。