mongodb客户端操作语法笔记
##登录连接: 进入客户端方法
D:\Program Files\MongoDB\Server\5.0\bin>mongo.exe
> db.runoob.insert({"name":"我的测试数据"})
WriteResult({ "nInserted" : 1 })
> show dbs #插入数据后可以显示,刚创建的空的db不会显示。
admin 0.000GB
config 0.000GB
local 0.000GB
runoob 0.000GB
> db.createCollection("mytable");
{ "ok" : 1 }
> show tables
mytable
runoob
> db.runoob.drop() #删除表
true
> show tables
mytable
> db.runoob.drop()
false
> db.mytable.drop() #删除表
true
> show tables #查询表 或者这个命令 show collections
> db.mycol2.insert({"name" : "菜鸟教程"}) #//在插入数据的时候,创建集合/表
WriteResult({ "nInserted" : 1 })
> show collections
mycol2
mytable
>
##插入单条记录且查询
> db.col.insert({title: 'MongoDB 教程',
... description: 'MongoDB 是一个 Nosql 数据库',
... by: '菜鸟教程',
... url: 'http://www.runoob.com',
... tags: ['mongodb', 'database', 'NoSQL'],
... likes: 100
... })
WriteResult({ "nInserted" : 1 })
> show tables
col
mycol2
mytable
> db.col.find()
{ "_id" : ObjectId("629774960b8adde4a1c3248a"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
>
##定义变量的方式来添加
> document=({title: 'MongoDB 教程',
... description: 'MongoDB 是一个 Nosql 数据库',
... by: '菜鸟教程',
... url: 'http://www.runoob.com',
... tags: ['mongodb', 'database', 'NoSQL'],
... likes: 100
... });
{
"title" : "MongoDB 教程",
"description" : "MongoDB 是一个 Nosql 数据库",
"by" : "菜鸟教程",
"url" : "http://www.runoob.com",
"tags" : [
"mongodb",
"database",
"NoSQL"
],
"likes" : 100
}
> db.col.insert(document)
WriteResult({ "nInserted" : 1 })
> db.col.find()
{ "_id" : ObjectId("629774960b8adde4a1c3248a"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
{ "_id" : ObjectId("629774f50b8adde4a1c3248b"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
>
##save同insert命令
> db.col.save(document)
WriteResult({ "nInserted" : 1 })
## 修改语法:
db.collection.update(
<query>,
<update>,
{
upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)
参数说明:
query : update的查询条件,类似sql update查询内where后面的。
update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
writeConcern :可选,抛出异常的级别。
#默认一次修改一条数据
db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}})
db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB2'}})
db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB3'}})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
##未找到记录,默认不新增
> db.col.update({'title':'MongoDB 教程NEW'},{$set:{'title':'MongoDB3'}})
WriteResult({ "nMatched" : 0, "nUpserted" : 0, "nModified" : 0 })
##按格式输出
> db.col.find().pretty()
{
"_id" : ObjectId("629774960b8adde4a1c3248a"),
"title" : "MongoDB",
"description" : "MongoDB 是一个 Nosql 数据库",
"by" : "菜鸟教程",
"url" : "http://www.runoob.com",
"tags" : [
"mongodb",
"database",
"NoSQL"
],
"likes" : 100
}
{
"_id" : ObjectId("629774f50b8adde4a1c3248b"),
"title" : "MongoDB2",
"description" : "MongoDB 是一个 Nosql 数据库",
"by" : "菜鸟教程",
"url" : "http://www.runoob.com",
"tags" : [
"mongodb",
"database",
"NoSQL"
],
"likes" : 100
}
{
"_id" : ObjectId("629775720b8adde4a1c3248c"),
"title" : "MongoDB3",
"description" : "MongoDB 是一个 Nosql 数据库",
"by" : "菜鸟教程",
"url" : "http://www.runoob.com",
"tags" : [
"mongodb",
"database",
"NoSQL"
],
"likes" : 100
}
>
#删除
>db.col.remove({'title':'MongoDB 教程'})
WriteResult({ "nRemoved" : 2 }) # 删除了两条数据
##只查询返回一条
> db.col.findOne()
{
"_id" : ObjectId("629774960b8adde4a1c3248a"),
"title" : "MongoDB",
"description" : "MongoDB 是一个 Nosql 数据库",
"by" : "菜鸟教程",
"url" : "http://www.runoob.com",
"tags" : [
"mongodb",
"database",
"NoSQL"
],
"likes" : 100
}
> db.col.find({"title","MongoDB"})
uncaught exception: SyntaxError: missing : after property id :
@(shell):1:20
> db.col.find({"title","MongoDB"}).pretty
uncaught exception: SyntaxError: missing : after property id :
@(shell):1:20
#解决方法:
db.getCollection('col').find({"title":"MongoDB"})
> db.col.find()
{ "_id" : ObjectId("629774960b8adde4a1c3248a"), "title" : "MongoDB", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
{ "_id" : ObjectId("629774f50b8adde4a1c3248b"), "title" : "MongoDB2", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
{ "_id" : ObjectId("629775720b8adde4a1c3248c"), "title" : "MongoDB3", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
> db.getCollection('col').find({"title":"MongoDB"})
{ "_id" : ObjectId("629774960b8adde4a1c3248a"), "title" : "MongoDB", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
##and操作
> db.col.find({"by":"菜鸟教程", "title":"MongoDB 教程"}).pretty()
##or操作
> db.col.find({$or:[{"by":"菜鸟教程"},{"title": "MongoDB 教程"}]}).pretty()
##and or操作
>db.col.find({"likes": {$gt:50}, $or: [{"by": "菜鸟教程"},{"title": "MongoDB 教程"}]}).pretty()

##限制输出2行
> db.col.find().limit(2)
{ "_id" : ObjectId("629774960b8adde4a1c3248a"), "title" : "MongoDB", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
{ "_id" : ObjectId("629774f50b8adde4a1c3248b"), "title" : "MongoDB2", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
>
##跳过第一行
> db.col.find().skip(1)
{ "_id" : ObjectId("629774f50b8adde4a1c3248b"), "title" : "MongoDB2", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
{ "_id" : ObjectId("629775720b8adde4a1c3248c"), "title" : "MongoDB3", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "菜鸟教程", "url" : "http://www.runoob.com", "tags" : [ "mongodb", "database", "NoSQL" ], "likes" : 100 }
>
MongoDB sort() 方法
在 MongoDB 中使用 sort() 方法对数据进行排序,sort() 方法可以通过参数指定排序的字段,并使用 1 和 -1 来指定排序的方式,
其中 1 为升序排列,而 -1 是用于降序排列。
>db.COLLECTION_NAME.find().sort({KEY:1})
排序
> db.col.find({},{"title":1,_id:0}).sort({"likes":-1})
{ "title" : "MongoDB" }
{ "title" : "MongoDB2" }
{ "title" : "MongoDB3" }
##升序
db.col.find({},{"title":1,_id:0}).sort({"title":1})
{ "title" : "MongoDB" }
{ "title" : "MongoDB2" }
{ "title" : "MongoDB3" }
##降序
db.col.find({},{"title":1,_id:0}).sort({"title":-1})
{ "title" : "MongoDB3" }
{ "title" : "MongoDB2" }
{ "title" : "MongoDB" }
mongodb客户端操作语法笔记的更多相关文章
- mongodb客户端操作常用命令
一启动mongodb数据库mongod --dbpath E:\mongo\data\db(这里些自己的mongodb数据库存放目录)二客户端操作1.显示数据库集合show dbs2.新建数据库use ...
- mongodb客户端操作常用命令(续)
之前有写过一篇mongodb客户端的操作常用命令 ,今天接着来记录分享一些关于mongodb账户权限设置的命令操作 上期mongodb客户端的操作常用命令地址:https://www.cnblogs. ...
- Mongodb Manual阅读笔记:CH2 Mongodb CRUD 操作
2 Mongodb CRUD 操作 Mongodb Manual阅读笔记:CH2 Mongodb CRUD 操作Mongodb Manual阅读笔记:CH3 数据模型(Data Models)Mong ...
- python 全栈开发,Day124(MongoDB初识,增删改查操作,数据类型,$关键字以及$修改器,"$"的奇妙用法,Array Object 的特殊操作,选取跳过排序,客户端操作)
一.MongoDB初识 什么是MongoDB MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介 ...
- MongoDB 基本语法笔记
MongoDB常识 MongoDB Shell是MongoDB自带的交互式Javascript shell,所以可直接执行JS脚本,用来对MongoDB进行操作和管理的交互式环境. ObjectId: ...
- 笔记-mongodb数据操作
笔记-mongodb数据操作 1. 数据操作 1.1. 插入 db.COLLECTION_NAME.insert(document) 案例: db.inventory.insertOn ...
- MongoDB学习笔记(五) MongoDB文件存取操作
由于MongoDB的文档结构为BJSON格式(BJSON全称:Binary JSON),而BJSON格式本身就支持保存二进制格式的数据,因此可以把文件的二进制格式的数据直接保存到MongoDB的文档结 ...
- Mongodb与mysql语法比较
Mongodb与mysql语法比较 mongodb与mysql命令对比 传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由 ...
- mongodb常用命令学习笔记
mongodb常用命令学习笔记 创建数据库 use DATABASE_NAME eg: use users; 如果数据库不存在,则创建数据库,否则切换到指定数据库.要显示刚刚创建的数据库,需要向数据库 ...
- SQL基础语法笔记教程整理
PS:本文适用SQL Server2008语法. 一.关系型数据库和SQL 实际上准确的讲,SQL是一门语言,而不是一个数据库. 什么是SQL呢?简而言之,SQL就是维护和使用关系型数据库中的的数据的 ...
随机推荐
- dotnet 给 NuGet 包加上 Aliases 别名解决类型冲突
有时某个相同命名空间相同名字的类型被两个不同的 NuGet 包定义了,尽管这是非常少见的事情,咱需要使用到其中的一个 NuGet 包的类型,但默认情况下将会因为类型冲突而构建不通过.本文将告诉大家如何 ...
- dotnet 警惕 async void 线程顶层异常
在应用程序设计里面,不单是 dotnet 应用程序,绝大部分都会遵循让应用在出现未处理异常状态时终结的原则.在 dotnet 应用里面,如果一个线程顶层出现未捕获异常,则应用进程将会被认为出现异常状态 ...
- Python使用HTMLTestRunner运行所有用例并产生报告
#coding:utf-8import unittestimport osimport sysimport HTMLTestRunnercase_path = os.path.join(os.path ...
- 四、Doris物化视图
使用场景: 在实际的业务场景中,通常存在两种场景并存的分析需求:对固定维度的聚合分析 和 对原始明细数据任意维度的分析. 例如,在销售场景中,每条订单数据包含这几个维度信息(item_id, sol ...
- SWAG反向代理Jellyfin媒体服务器流量教程
目录 1. 简介 1.1 Jellyfin媒体服务器 1.2 SWAG服务器 2. 设置Jellyfin开启HTTPS访问 3. 安装并配置SWAG服务器反向代理Jellyfin流量 3.1 安装SW ...
- docker 安装 kafka+zookeeper,golang操作kafka
目录 docker-compose.yml go操作kafka producer 消费者 consumer 消费者 结合gin框架操作kafka go-queue操作kafka 环境: centos8 ...
- WEB服务与NGINX(15)-NGINX安装第三方模块
1.nginx安装第三方模块 nginx安装第三方模块需要进行编译安装,安装方法如下: ./configure --prefix=/你的安装目录 --add-module=/第三方模块目录 ... 注 ...
- nim 8. 异常处理
基本的异常处理 try: let d = newSeq[int]() echo "value: ", d[2] except: let e = getCurrentExceptio ...
- 🔥fastposter v2.19.0 一款很哇塞的海报生成器
fastposter v2.19.0 一款很哇塞的海报生成器 fastposter 是一款快速开发海报的工具,已经服务众多电商.分销系统.电商海报.电商主图.行业海报等海报生成和制作场景. 什么是 f ...
- FE知识点(硕哥)
目录 前传: 1.typeof和类型转换 正文: 1.作用域.作用域链([[scope]]) 2.立即执行函数 3.闭包 4.对象.包装类 5.原型原型链 6.call.apply 7.继承模式.命名 ...