常用语句
概念解析(与)
创建数据库
use DATABASE_NAME;
Copy
删除数据库
db.dropDatabase();#默认为当前数据库
Copy
创建集合
db.createCollection(name, options);
参数说明:
name: 要创建的集合名称
options: 可选参数, 指定有关内存大小及索引的选项
实例:db.createCollection("mycol", { capped : true, autoIndexId : true, size :
6142800, max : 10000 } )
Copy
删除集合
db.collection.drop() 如果成功删除选定集合,则 drop() 方法返回 true,否则返回 false。
Copy
插入文档
db.COLLECTION_NAME.insert(document)
或
db.COLLECTION_NAME.save(document)
save():如果 _id 主键存在则更新数据,如果不存在就插入数据。该方法新版本中已废弃,可以使用 db.collection.insertOne() 或 db.collection.replaceOne() 来代替。
insert(): 若插入的数据主键已经存在,则会抛 org.springframework.dao.DuplicateKeyException 异常,提示主键重复,不保存当前数据。
版本之后新增了 db.collection.insertOne() 和 db.collection.insertMany()。
db.collection.insertOne() 用于向集合插入一个新文档,语法格式如下:
db.collection.insertOne(
<document>,
{
writeConcern: <document>
}
)
db.collection.insertMany() 用于向集合插入一个多个文档,语法格式如下:
db.collection.insertMany(
[ <document 1> , <document 2>, ... ],
{
writeConcern: <document>,
ordered: <boolean>
}
)
参数说明:
document:要写入的文档。
writeConcern:写入策略,默认为 1,即要求确认写操作,0 是不要求。
ordered:指定是否按顺序写入,默认 true,按顺序写入。
Copy
删除文档
语法:
db.collection.remove(
<query>,
{
justOne: <boolean>,
writeConcern: <document>
}
)
参数说明:
query :(可选)删除的文档的条件。
justOne : (可选)如果设为 true 或 1,则只删除一个文档,如果不设置该参数,或使用默认值 false,则删除所有匹配条件的文档。
writeConcern :(可选)抛出异常的级别。
删除集合下全部文档:
db.inventory.deleteMany({})
删除 status 等于 A 的全部文档:
db.inventory.deleteMany({ status : "A" })
删除 status 等于 D 的一个文档:
db.inventory.deleteOne( { status: "D" } )
Copy
查询文档
查询数据的语法格式如下:
db.collection.find(query, projection)
query :可选,使用查询操作符指定查询条件
projection :可选,使用投影操作符指定返回的键。查询时返回文档中所有键值, 只需省略该参数即可(默认省略)。
**如果集合为数字,需要换一种查询方式
db.getCollection(name).find()
如果你需要以易读的方式来读取数据,可以使用 pretty() 方法,语法格式如下:
>db.col.find().pretty()
pretty() 方法以格式化的方式来显示所有文档。
AND 条件
语法格式如下:
>db.col.find({key1:value1, key2:value2}).pretty()
OR 条件
OR 条件语句使用了关键字 $or,语法格式如下:
>db.col.find(
{
$or: [
{key1: value1}, {key2:value2}
]
}
).pretty()
Copy
条件操作符
(>) 大于 - $gt
(<) 小于 - $lt
(>=) 大于等于 - $gte
(<= ) 小于等于 - $lte
实例:
db.col.find({likes : {$gt : 100}});
Copy
$type 操作符
作用:$type操作符是基于BSON类型来检索集合中匹配的数据类型,并返回结果。
实例:db.col.find({"title" : {$type : 'string'}})
Copy
Limit与Skip方法
limit语法: db.COLLECTION_NAME.find().limit(NUMBER); skip() 语法: db.COLLECTION_NAME.find().limit(NUMBER).skip(NUMBER); 作用: skip()方法来跳过指定数量的数据
Copy
sort()方法
sort() 方法
作用:可以通过参数指定排序的字段,并使用 1 和 -1 来指定排序的方式,其中 1 为升序排列,而 -1 是用于降序排列。
基本语法:
>db.COLLECTION_NAME.find().sort({KEY:1})






