mongoDB 其他数据类型
时间 类型
获取当前时间
new Date() 自动生成当前时间(国际标准时间)
db.class.insertOne({book:"数学",date:new Date()})
Date() 获取当前操作系统的时间(当地时间)
时间函数
ISODate(date)
功能 将指定时间转换为mongoDB 存储时间
参数 默认当前的 ISO 时间
通过字符串指定时间
"2019-1-1 11:11:11"
"20190101 11:11:11"
"20190101"
获取时间戳
valueOf()
功能 根据标准时间生成时间戳
> db.class.insert({book:"yes",date:ISODate("20190101 11:11:11").valueOf()})
添加数据: { "book" : "yes", "date" : 1546341071000 }
Null 类型
表示空值
值 null
含义
表示某个域的值为空
在表达式语句中表示不存在
> db.class.insert({book:"yes",price:null})
WriteResult({ "nInserted" : 1 })
添加数据{ "book" : "yes", "price" : null }
> db.class.find({price:null}) 把所有不存在 price 的以及存在 price:null 的查询出来了
输出:
{ "_id" : ObjectId("5c78d0ac24dd494da47a3276"), "book" : "yes", "date" : 1546341071000 }
{ "_id" : ObjectId("5c78d1f924dd494da47a3277"), "book" : "yes", "price" : null }
ps:
对比一下 $exists
$exists 只会查出不存在的
field:null 还会把 存在field的值为空的也查询出来
Object 对象
定义: 文档中每个域的值为文档, 该文档称为 object 数据, 即对象类型
创建
> db.class.insertOne({author:"yt",book:{title:"羊驼日记",publish:"羊驼出版社",price:999}})
{
"acknowledged" : true,
"insertedId" : ObjectId("5c78d4d824dd494da47a3278")
}
查询
用 "外部域.内部域" 的格式, 而且必须加 引号 标记为字符串, 否则无法识别
> db.class.find({"book.title":"羊驼之歌"},{_id:0})
{ "author" : "yang", "book" : { "title" : "羊驼之歌", "publish" : "羊驼出版社", "price" : 998 } }
>
修改
就没啥大区别了同其他.无非就是 字段的部分变一下罢了
> db.class.updateOne({"book.title":"羊驼之歌"},{$set:{price:555}})
{ "acknowledged" : true, "matchedCount" : 1, "modifiedCount" : 1 }
修改前: { "author" : "yang", "book" : { "title" : "羊驼之歌", "publish" : "羊驼出版社", "price" : 998 } }
修改后: { "author" : "yang", "book" : { "title" : "羊驼之歌", "publish" : "羊驼出版社", "price" : 555 } }
ps:
由此延伸到数组, 数组下标也可以直接引用方法
"数组域.下标" 可以获取某一项值, 筛选还是修改或者删除都可以依旧就是更换域名而已
> db.class.find({"score.0":{$gt:10}})
{ "_id" : ObjectId("5c78974324dd494da47a3275"), "name" : "mm", "age" : 12, "score" : [ 12, 16, 17, 18, 26, 89, 90 ] }
> db.class.updateOne({name:"mm"},{$set:{"score.0":88}})
{ "_id" : ObjectId("5c78974324dd494da47a3275"), "name" : "mm", "age" : 12, "score" : [ 88, 16, 17, 18, 26, 89, 90 ] }
mongoDB 其他数据类型的更多相关文章
- mongoDB之数据类型
mongoDB之数据类型 Object ID :文档的id String: 字符串,最常用,必须是utf-8 Boolean:布尔值,true 或者false Integer:整数 Double:浮 ...
- MongoDB 之 数据类型 最无聊! But 最有用! MongoDB - 3
MongoDB的新篇章开始啦 - 数据类型 https://www.cnblogs.com/xuzhaocai/p/8048177.html 一.MongoDB 之 丰富多彩的数据类型世界 首先我们要 ...
- 3,MongoDB之数据类型
一.MongoDB 之数据类型 首先我们要先了解一下MongoDB中有什么样的数据类型: Object ID :Documents 自生成的 _id String: 字符串,必须是utf-8 Boo ...
- MongoDB - 认识MongoDB及数据类型
目录 MongoDB - 认识MongoDB及数据类型 启动 MogoDB的数据 MogoDB的数据类型 1.Object ID : Documents自生成的_id 2.string : 字符串,必 ...
- Mongodb基本数据类型、常用命令之增加、更新、删除
1.null---表示空值或者该字段不存在,如{"name":null} 2.布尔 --- 和java中的布尔一样,有两种:true,false,如{"sex" ...
- mongodb基本数据类型
本文导读:Mongodb是一种强大,灵活,可扩展的数据存储方式.它扩展了关系型数据库众多有用的功能,如索引,范围查询和排序. MongoDB的文件存储格式为BSON,同JSON一样支持往其它文档对象和 ...
- mongodb中数据类型的坑
在mongodb中,我们给每个文档插入数据的时候,mongodb自动会为我们插入的数据创建数据类型.由于mongodb是一个非结构化的数据存储系统,因此在文档中你可以随意插入不同类型的字段,这和MyS ...
- MongoDB的数据类型(四)
JSON JSON是一种简单的数据表示方式,它易于理解.易于解析.易于记忆.但从另一方面来说,因为只有null.布尔.数字.字符串.数组和对象这几种数据类型,所以JSON有一定局限性.例如,JSON没 ...
- MongoDB的数据类型
最近在写一个lua的MongoDB模块.MongoDB版本3.2,lua则是5.3.1.底层以C++来写,再把函数暴露给lua调用.但是在lua中打印结果时,发现了些奇怪的现象.首先,数据库中的内容: ...
随机推荐
- Dynamics 365测试和启用邮箱时候一直显示“安排电子邮件配置测试”怎么办?
摘要: 本人微信公众号:微软动态CRM专家罗勇 ,回复284或者20181125可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!我的网站是 www.luoyong.me ...
- Python开发爬虫之理论篇
爬虫简介 爬虫:一段自动抓取互联网信息的程序. 什么意思呢? 互联网是由各种各样的网页组成.每一个网页对应一个URL,而URL的页面上又有很多指向其他页面的URL.这种URL之间相互的指向关系就形成了 ...
- TabLayout您可能不知道的实用用法
一.修改点击的动画 函数:setUnboundedRipple 这是默认的点击的动画 我们用代码修改一下: mGlueTabLayout.setUnboundedRipple(true); 这是之后的 ...
- 版本控制工具(SVN/Git)介绍
文章大纲 一.SVN介绍二.Git介绍三.IDEA使用SVN和Git四.总结五.参考文章 一.SVN介绍 1. SVN服务器搭建和使用 首先来下载和搭建SVN服务器,下载地址如下: http:// ...
- IDEA工具教程
刚从myeclipse工具转成IntelliJ IDEA工具,在“传智播客*黑马程序员”学习了相关操作和配置,因此整理在该文章中. 文章大纲 教程文档下载地址 链接:https://pan.bai ...
- QT使用websocket进行长连接
一般我们用的最多的就是http请求,但是频繁的请求可能对服务造成的压力很大,所以今天谈谈websocket长连接,一句话:简单 1.什么是长连接? A:一次请求连接,终身使用,就可以长久的保持信息的交 ...
- java新知识系列 一
内联函数: 所谓内联函数就是指函数在被调用的地方直接展开,编译器在调用时不用像一般函数那样,参数压栈,返回时参数出栈以及资源释放等,这样提高了程序执行速度. 对应Java语言中也有一个关键字final ...
- 挖一挖MongoDB的备份与还原(实现指定时间点还原和增量备份还原)
一 研究背景需求 目前作者所在公司的MongoDB数据库是每天凌晨做一次全库完整备份,但数据库出现故障时,只能保证恢复到全备时间点,比如,00:30 做的完整备份,而出现故障是下午18:00,那么现 ...
- 安装最新nodejs
# apt-get update # apt-get install -y python-software-properties software-properties-common # add-ap ...
- C#中FormsAuthentication用法实例
....本文纯属抄袭.... using System; using System.Web; using System.Web.Security; namespace AuthTest { ...