如何获取嵌套数组字段

时间:2019-01-30 12:21:39

标签: rethinkdb

我有一个表用户,其中包含一个数组Employee,用于存储名称,我需要检索该数组的最后一个元素。

无法计算。尝试使用count,但count给出值= 1,但数组中有三个元素

r.table(“ user”)(“ Employee”)。count()

我需要计算Employee数组中的实际元素为3,请帮助。谢谢

1 个答案:

答案 0 :(得分:0)

如果您没有在特定文档的字段上调用.count,它将返回文档序列的计数。在您的请求中,1实际上意味着表中只有一个文档。

您需要遍历每个文档以获取每个文档的姓氏,并且可以使用.nth直接获取它:

r.table("user").map(function(document) {
  return document.merge({lastName: document("Employee").nth(-1)});
  // or, if you like complicated stuff
  return {
    id: document('id'),
    lastName: document("Employee").nth(
      document("Employee").count().sub(1)
    )
  };
});