mongodb保存数据时,字段名带点号时保存会以子文档的形式保存

2024-08-27 16:32

本文主要是介绍mongodb保存数据时,字段名带点号时保存会以子文档的形式保存,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

例子

我要保存这样的数据:

{ "date" : { "$date" : "2016-10-09T16:00:00.000Z"} , 
"createtime" : { "$date" : "2016-12-27T09:36:13.305Z"} , 
"status" : 1 , "registry_sum" : 114 , 
"Go-Goal新一代V3.0" : 2 , 
"Go-Goal新一代V3.0_mobile" :  null  , 
"Go-Goal新一代V3.0_email" : 2 , 
"Go-Goal新一代V3.0_weixin" :  null  , 
"Go-Goal新一代V3.0_mobile_success" :  null  , 
"Go-Goal新一代V3.0_mobile_fail" :  null  , 
"Go-Goal新一代V3.0_email_success" :  null  , 
"Go-Goal新一代V3.0_email_fail" : 2 , 
"Go-Goal新一代V3.0_weixin_success" :  null  , 
"Go-Goal新一代V3.0_weixin_fail" :  null  , 
"Go-Goal新一代V3.0_mobile_success_person" :  null  , 
"Go-Goal新一代V3.0_mobile_fail_person" :  null  , 
"Go-Goal新一代V3.0_mobile_success_business" :  null  , 
"Go-Goal新一代V3.0_mobile_fail_business" :  null  , 
"Go-Goal新一代V3.0_email_success_person" :  null  , 
"Go-Goal新一代V3.0_email_fail_person" : 2 , 
"Go-Goal新一代V3.0_email_success_business" :  null  , 
"Go-Goal新一代V3.0_email_fail_business" :  null  , 
"Go-Goal新一代V3.0_weixin_success_person" :  null  , 
"Go-Goal新一代V3.0_weixin_fail_person" :  null  , 
"Go-Goal新一代V3.0_weixin_success_business" :  null  , 
"Go-Goal新一代V3.0_weixin_fail_business" :  null 
}

我们可以看到保存的字段例如:Go-Goal新一代V3.0是带有点号的。

但是保存到mongodb中就变成了子文档的显示:

    "Go-Goal新一代V3" : {"0" : 2,"0_email" : 2,"0_email_fail" : 2,"0_email_fail_business" : null,"0_email_fail_person" : 2,"0_email_success" : null,"0_email_success_business" : null,"0_email_success_person" : null,"0_mobile" : null,"0_mobile_fail" : null,"0_mobile_fail_business" : null,"0_mobile_fail_person" : null,"0_mobile_success" : null,"0_mobile_success_business" : null,"0_mobile_success_person" : null,"0_weixin" : null,"0_weixin_fail" : null,"0_weixin_fail_business" : null,"0_weixin_fail_person" : null,"0_weixin_success" : null,"0_weixin_success_business" : null,"0_weixin_success_person" : null},

这里写图片描述

我们可以看到,它变成了,字段为Go-Goal新一代V3value变成了子文档的形式。

那么我们该怎么访问呢?

访问子文档

db.gg_registry.find({"Go-Goal新一代V3.0":5, "Go-Goal新一代V3.0_email":2})

也就是说,访问子文档,就是字段加.号就可以了,这与我想保存字段为Go-Goal新一代V3.0是不冲突的。

结果为:

    "Go-Goal新一代V3" : {"0" : 5,"0_email" : 2,"0_email_fail" : 2,"0_email_fail_business" : 1,"0_email_fail_person" : 1,"0_email_success" : null,"0_email_success_business" : null,"0_email_success_person" : null,"0_mobile" : 1,"0_mobile_fail" : 1,"0_mobile_fail_business" : null,"0_mobile_fail_person" : 1,"0_mobile_success" : null,"0_mobile_success_business" : null,"0_mobile_success_person" : null,"0_weixin" : 2,"0_weixin_fail" : 2,"0_weixin_fail_business" : null,"0_weixin_fail_person" : 2,"0_weixin_success" : null,"0_weixin_success_business" : null,"0_weixin_success_person" : null},

官网文档 Query查询

这篇关于mongodb保存数据时,字段名带点号时保存会以子文档的形式保存的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1112192

相关文章

Python实现word文档内容智能提取以及合成

《Python实现word文档内容智能提取以及合成》这篇文章主要为大家详细介绍了如何使用Python实现从10个左右的docx文档中抽取内容,再调整语言风格后生成新的文档,感兴趣的小伙伴可以了解一下... 目录核心思路技术路径实现步骤阶段一:准备工作阶段二:内容提取 (python 脚本)阶段三:语言风格调

使用Java将DOCX文档解析为Markdown文档的代码实现

《使用Java将DOCX文档解析为Markdown文档的代码实现》在现代文档处理中,Markdown(MD)因其简洁的语法和良好的可读性,逐渐成为开发者、技术写作者和内容创作者的首选格式,然而,许多文... 目录引言1. 工具和库介绍2. 安装依赖库3. 使用Apache POI解析DOCX文档4. 将解析

SpringBoot集成Milvus实现数据增删改查功能

《SpringBoot集成Milvus实现数据增删改查功能》milvus支持的语言比较多,支持python,Java,Go,node等开发语言,本文主要介绍如何使用Java语言,采用springboo... 目录1、Milvus基本概念2、添加maven依赖3、配置yml文件4、创建MilvusClient

SpringValidation数据校验之约束注解与分组校验方式

《SpringValidation数据校验之约束注解与分组校验方式》本文将深入探讨SpringValidation的核心功能,帮助开发者掌握约束注解的使用技巧和分组校验的高级应用,从而构建更加健壮和可... 目录引言一、Spring Validation基础架构1.1 jsR-380标准与Spring整合1

MySQL 中查询 VARCHAR 类型 JSON 数据的问题记录

《MySQL中查询VARCHAR类型JSON数据的问题记录》在数据库设计中,有时我们会将JSON数据存储在VARCHAR或TEXT类型字段中,本文将详细介绍如何在MySQL中有效查询存储为V... 目录一、问题背景二、mysql jsON 函数2.1 常用 JSON 函数三、查询示例3.1 基本查询3.2

SpringBatch数据写入实现

《SpringBatch数据写入实现》SpringBatch通过ItemWriter接口及其丰富的实现,提供了强大的数据写入能力,本文主要介绍了SpringBatch数据写入实现,具有一定的参考价值,... 目录python引言一、ItemWriter核心概念二、数据库写入实现三、文件写入实现四、多目标写入

使用Python将JSON,XML和YAML数据写入Excel文件

《使用Python将JSON,XML和YAML数据写入Excel文件》JSON、XML和YAML作为主流结构化数据格式,因其层次化表达能力和跨平台兼容性,已成为系统间数据交换的通用载体,本文将介绍如何... 目录如何使用python写入数据到Excel工作表用Python导入jsON数据到Excel工作表用

Mysql如何将数据按照年月分组的统计

《Mysql如何将数据按照年月分组的统计》:本文主要介绍Mysql如何将数据按照年月分组的统计方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql将数据按照年月分组的统计要的效果方案总结Mysql将数据按照年月分组的统计要的效果方案① 使用 DA

鸿蒙中Axios数据请求的封装和配置方法

《鸿蒙中Axios数据请求的封装和配置方法》:本文主要介绍鸿蒙中Axios数据请求的封装和配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.配置权限 应用级权限和系统级权限2.配置网络请求的代码3.下载在Entry中 下载AxIOS4.封装Htt

Java利用docx4j+Freemarker生成word文档

《Java利用docx4j+Freemarker生成word文档》这篇文章主要为大家详细介绍了Java如何利用docx4j+Freemarker生成word文档,文中的示例代码讲解详细,感兴趣的小伙伴... 目录技术方案maven依赖创建模板文件实现代码技术方案Java 1.8 + docx4j + Fr