You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用N1QL查询选取文档子字段及嵌套元素

使用N1QL选取嵌套字段的子元素

当然可以!在N1QL中,我们可以通过**点符号(.)**直接访问嵌套在对象里的子字段,完全能实现你想要的从book字段中提取$ref和_type的需求。

先看你的示例文档:

{ 
  "content": { 
    "_id": "88w73c9e-f7ed-4816-7778-5247e69cd77450", 
    "_type": "Publish", 
    "author": "abcd", 
    "book": { 
      "$ref": "03ee49ec-4452-4ebs-9f49-9f3aa4rra53f", 
      "_type": "Book" 
    } 
  } 
}

对应的N1QL查询语句

如果你想单独提取book下的$ref和_type,可以直接在SELECT子句中指定这些嵌套字段:

SELECT 
  content.book.`$ref` AS book_ref,
  content.book._type AS book_type
FROM 
  `your-bucket-name`; -- 记得替换成你的实际桶名

小提示

  • 因为$ref字段名包含特殊字符$,所以需要用**反引号(`)**把它包裹起来,避免N1QL解析出错;
  • 使用AS可以给提取出来的字段设置更友好的别名,方便后续使用;
  • 如果需要同时保留其他上层字段(比如content.author),直接在SELECT里追加即可,比如content.author, content.book.$ref...。

内容的提问来源于stack exchange,提问作者Sanjay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 06:40:33