2016-05-10 20 views
1

我正在嘗試編寫一個類似於Hive的LATERAL EXPLODE的Solr查詢,並以CSV格式返回結果。我想爲multiValued字段中的每個值返回一個「行」並複製「父」值。以CSV格式返回的Solr MultiValued字段

這是我的查詢......

http://localhost:8983/solr/select?q=*%3A*&fl=parent,id&wt=csv 

它返回此輸出。

parent,id 
10,"4100,4435" 
11,"376,190,4542" 
12,"141,142" 

不過,我想查詢的返回結果是這樣的:

parent,id 
10,4100 
10,4435 
11,376 
11,190 
11,4542 
12,141 
12,142 

這可能與Solr的?

回答

2

使您的數據非規範化並使用Solr的Result Grouping

喜歡這家店的數據:

parent,id,id_group 
10,"4100","4100,4435" 
10,"4435","4100,4435" 
11,"376","376,190,4542" 
11,"190","376,190,4542" 
11,"4542","376,190,4542" 
12,"141","141,142" 
12,"142","141,142" 

現在,當你想爲每個多值字段的單行。

查詢: http://localhost:8983/solr/awesome-collection/select?q=*:*&fl=parent,id&wt=json&indent=true

結果:

parent,id 
10,4100 
10,4435 
11,376 
11,190 
11,4542 
12,141 
12,142 

當你想組數據

查詢: http://localhost:8983/solr/awesome-collection/select?q=*:*&fl=parent,id_group&wt=json&indent=true&group=true&group.field=parent&group.format=simple

結果:

parent,id_group 
10,"4100,4435" 
11,"376,190,4542" 
12,"141,142"