在DSE搜索CQL solr\u查询中指定多个方面字段

在DSE搜索CQL solr\u查询中指定多个方面字段,solr,datastax,datastax-enterprise,cql3,cassandra-3.0,Solr,Datastax,Datastax Enterprise,Cql3,Cassandra 3.0,我们以下表为例 CREATE TABLE test.employee_copy1 ( empid int, deptid int, firstname text, lastname text, solr_query text, -- column got created by enabling DSE Search PRIMARY KEY (empid, deptid) ) 假设solrconfig.xml、schema.xml拥有所有字段,并且solr core在DS

我们以下表为例

CREATE TABLE test.employee_copy1 (
  empid int,
  deptid int,
  firstname text,
  lastname text,
  solr_query text, -- column got created by enabling DSE Search
  PRIMARY KEY (empid, deptid)
)
假设solrconfig.xml、schema.xml拥有所有字段,并且solr core在DSE搜索环境中启动并运行在cassandra之后

当我尝试以下查询时

SELECT JSON * FROM test.employee_copy1 WHERE 
solr_query = '{"q":"*:*", 
"facet":{"field":"firstname"}}'; // LOOK HERE
我得到的结果是,预期的

{
    "facet_fields": {
        "firstname": {
            "John": 154,
            "Mary": 77
        }
    }
}
现在,我想要firstname和lastname的facet。所以我的问题是,

SELECT JSON * FROM test.employee_copy1 WHERE 
solr_query = '{"q":"*:*", 
"facet":{"field":"firstname", "field":"lastname"}}'; //LOOK HERE
现在结果是,意外或错误

{
    "facet_fields": {
        "lastname": {
            "Paul": 130,
            "Abraham": 50
        }
    }
}
问题:DSE Search CQL resultset JSON不会同时返回firstname和lastname的facet。仅为查询中的最后一个字段返回facet。

我还尝试了以下查询,但开发中心报告了错误

SELECT JSON * FROM test.employee_copy1 WHERE 
solr_query = '{"q":"*:*", "facet":{"field":["firstname","lastname"]}}';

SELECT JSON * FROM test.employee_copy1 WHERE 
solr_query = '{"q":"*:*", "facet":{"field":"firstname,lastname"}}';
问题:DSE搜索能否仅处理一个方面字段

注意:我能够将两个字段传递给Solr HTTP API,并获得两个字段的facet,如下所示

http://localhost:8983/solr/test.employee/select?q=*:*&wt=json&indent=true&facet=true&facet.field=firstname&facet.field=lastname

  RESPONSE:
  ...
    {
        "facet_fields": {
            "firstname": [
                "John", 
                 154,
                "Mary", 
                77
             ],
            "lastname": [
                "Paul", 
                 130,
                "Abraham", 
                50
             ]
            }
        }
    }

您使用的是哪个版本的DSE?另外,您的
SELECT
是否在不指定
JSON
的情况下工作?最后,如果您从test.employee\u copy1执行
SELECT JSON*,其中solr\u query='{“q”:“*:*”,“facet”:{“field”:[“firstname”,“lastname”]}
直接在
cqlsh
中,您会遇到什么错误/结果?Q1。ans->DSE5.0.1;问题2。Yes select*还返回相同的JSON;为了进一步说明我为什么询问
cqlsh
,我想排除DevCenter是问题的潜在根源。我无法在5.0.8版中使用语法
的“facet”:{“field”:[“firstname”,“lastname”]}
cqlsh
重现您的问题。