私の質問は非常に短く、私はそれに固執しました。次のようなドキュメントのコレクションがあります。
{
...,
"Type": [
"Type1",
"Type2",
"Type3",
"Type4"
],
...
}
そして、これらの値を文字列のリストにグループ化するには、map/reduce インデックスを作成する必要があると思います。たとえば、次の 2 つのドキュメントがある場合:
{
...,
"Type": [
"Type1",
"Type3"
],
...
}
{
...
"Type": [
"Type2",
"Type3",
"Type4"
],
...
}
{"Type1","Type2","Type3","Type4"} のようなすべての個別の値を持つ 1 つのリストの結果が必要です
方法がわかりません。いくつかの方法を試しましたが、成功しませんでした。
言い忘れましたが、今のところ 1500 を超えるドキュメントなど、大量のデータがあります。
public class ProjectTypeIndex : AbstractIndexCreationTask<Project, ProjectTypeIndex.ReduceResult>
{
public class ReduceResult
{
public string ProjectType { get; set; }
}
public ProjectTypeIndex()
{
Map = projects => from project in projects
select new
{
project.Type
};
Reduce = results => from result in results
group result by result.Type into g
select new
{
ProjectType = g.Key
};
}
}