Couchbase 如何使用N1ql查询选择文档的子字段

Couchbase 如何使用N1ql查询选择文档的子字段,couchbase,n1ql,Couchbase,N1ql,我可以使用N1ql查询选择特定字段的子元素吗 例如: { "content": { "_id": "88w73c9e-f7ed-4816-7778-5247e69cd77450", "_type": "Publish", "author": "abcd", "book": { "$ref": "03ee49ec-4452-4ebs-9f49-9f3aa4rra53f", "_type": "Book" } } } 如何从

我可以使用N1ql查询选择特定字段的子元素吗

例如:

{
  "content": {
    "_id": "88w73c9e-f7ed-4816-7778-5247e69cd77450",
    "_type": "Publish",
    "author": "abcd",
    "book": {
      "$ref": "03ee49ec-4452-4ebs-9f49-9f3aa4rra53f",
      "_type": "Book"
    }
  }
}
  • 如何从book字段获取
    $ref
    \u type
  • 如何为其编写select查询

从子对象选择字段的命令使用点表示法

例如,要从
test
bucket中的所有文档中获取字段:

SELECT content.book.`$ref`, content.book._type FROM test;
  • 选择content.book.`$ref`,content.book.\u键入
    :这些字段是从
    测试
    存储桶中的所有文档中选择的。
    • `$ref`
      位于后面的刻度中,因为美元是一个保留字符
  • 来自测试的
    :这是将对其执行的bucket查询
查询将返回以下信息:

[
  {
    "$ref": "03ee49ec-4452-4ebs-9f49-9f3aa4rra53f",
    "_type": "Book"
  }
]

要根据文档内容进行查询,可以使用以下查询:

SELECT content.book.`$ref`, content.book._type FROM test WHERE content. author = "abcd";
有关N1QL的更多信息,请参阅Couchbase和