solrクエリでgroupbyを実行した後、次の形式で応答があります。私はsolrバージョン3.5を使用しています
"grouped":{
"channel_id":{
"matches":48,
"ngroups":26,
"groups":[{
"groupValue":"204",
"doclist":{"numFound":1,"start":0,"docs":[
{
"channel_name":"ZeeTv",
"channel_num":4,
"title":"The Name",
"channel_id":"204"
}},
{
"groupValue":"166",
"doclist":{"numFound":2,"start":0,"docs":[
{
"channel_name":"Sony",
"channel_num":2,
"title":"The Name",
"channel_id":"166",
{
"channel_name":"Sony",
"channel_num":2,
"title":"The Puzzle",
"channel_id":"166"
}}]}}
次の方法で応答を配列で取得しています。
for(var chl in data.grouped.channel_id.groups) {
config['playlist'].push(data.grouped.channel_id.groups[chl]['doclist']['docs']);
}
したがって、それぞれの個別のアレイgroupValue
が形成されます。配列の構造は次のとおりです。
"0"=>{"0"=>"value"},"1"=>{"0"=>"result1","1"=>"result2"}
しかし、配列の作成中にキー名、つまり「0」、「1」をgroupValue
応答から変更して、配列からconfig['playlist']['166']
すべてのショーをチェックできるようにしたいと考えていchannel_id
ます。これを行うことができますか?私は次のことを期待しています:
"204"=>{"0"=>"value"},"166"=>{"0"=>"result1","1"=>"result2"}
また、可能であればchannel_num
、応答が昇順になるようにsolrクエリを作成できます。つまり、最初の結果がchannel_num 2、次に4になります。groupby:channel_id