2017-05-30 60 views
0

我是elasticsearch的新手,刚开始尝试使用elasticsearch在nodejs上进行全文搜索。目前我有一个问题找出计数嵌套字段的项目数。例如,假设这是我的数据:如何计算elasticsearch中嵌套字段下的文件数

{ 
    user1: { 
    movies: [ 
     { 
     title: 'eat' 
     }, 
     { 
     title: 'drink' 
     } 
    ], 
    books: [ 
     { 
     author: 'apple' 
     } 
    ] 
    }, 
    user2: { 
    movies: [ 
     { 
     title: 'jump' 
     }, 
     { 
     title: 'punch' 
     }, 
     { 
     title: 'sleep' 
     }, 
     { 
     title: 'eat' 
     } 
    ], 
    books: [ 
     { 
     author: 'orange' 
     } 
    ] 
    } 
} 

怎么办多少部电影的简单计数确实为user1或user2的有(在此情况下,2和4)?

如果事实证明令人惊讶的困难,我仍然可以在其他地方存储该号码。

回答

0
let users = { 
     user1: { 
       movies: [ 
         { 
           title: 'eat' 
         }, 
         { 
           title: 'drink' 
         } 
       ], 
       books: [ 
         { 
           author: 'apple' 
         } 
       ] 
     }, 
     user2: { 
       movies: [ 
         { 
           title: 'jump' 
         }, 
         { 
           title: 'punch' 
         }, 
         { 
           title: 'sleep' 
         }, 
         { 
           title: 'eat' 
         } 
       ], 
       books: [ 
         { 
           author: 'orange' 
         } 
       ] 
     } 
} 

console.log(`User1 count: ${users.user1.movies.length}`); 
console.log(`User2 count: ${users.user2.movies.length}`); 
+0

对不起,我的意思是这是如何在弹性搜索数据... ... –