如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。
而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!
格式:mongodb:// [username:password@]host1[:port1][,host2[:port2],…[,hostN[:portN]]][/[database][?options]]
其中mongodb:// 是必须要有的。
username:password@ : -可选项 如果设置,链接数据库服务后会尝试登录该数据库
database :-可选项 如果指定username:password@ 链接验证指定数据库,不指定链接test数据库
options :链接选项,如果不使用database 前面需加上/,所有链接选项都是键值对name=value,多个选项时,以&或;分隔。
help();
db.help();
db.新建集合.help();
例子:db.yangzhenyu.help();
use 数据库名;
use yangzhenyu
// 01 插入一条数据,否则show dbs;不显示
db.yangzhenyu.insert({"name":"hello world!!!"});
// 02 查询所有数据库
show dbs;
db;或者 db.getName();
db.stats();
db.version();
db.getMongo();
db.集合.insert();
在mongoDB中,不需要主动创建集合,当你插入文档时会自动创建
db.yangzhenyu.insert({"xxx":"yang","age":"27","yyy":"zhenyu"});
db.集合.find()
db.yangzhenyu.find();
db.集合.findOne();
db.yangzhenyu.findOne()
db.集合.find({"key1":"name1","key2","name2"});
db.yangzhenyu.find({"xxx":"yang","age":"27"})
db.集合.find({
$or:[
{"key1":"name1"},{"key2":"name2"}
]
})
db.yangzhenyu.find({
$or:[
{"name":"hello world!!!"}, {"age":"27"}
]
})
db.集合.find({
"key0":"name0",
$or:[
{"key1":"name1"},{"key2":"name2"}
]
})
相当于: key0=name0 and (key1=name1 or key2=name2)
db.yangzhenyu.find({
"age":"27",
$or:[
{"name":"hello world!!!"}, {"age":"27"}
]
})
> | 大于 | $gt |
< | 小于 | $lt |
>= | 大于等于 | $gte |
<= | 小于等于 | $lte |
!= | 不等于 | $ne |
db.yangzhenyu.find({
"age":{$gt:"26"}
});
db.集合.find({"字段":/查询内容/});
// 模糊查询-包含2
db.yangzhenyu.find({
"age":/2/
});
// 模糊查询-以2开头
db.yangzhenyu.find({
"age":/^2/
});
//模糊查询-小写kul
db.yangzhenyu.find({
"yyy":/kul/
});
//模糊查询-忽略大小写
db.yangzhenyu.find({
"yyy":/kul/i
});
$type操作符是基于BSON类型来检索集合中匹配的数据类型,并返回结果
准备:
创建集合typeTest,并插入两条数据
db.typeTest.insert({"name":"yangzhenyu","age":"27"});
db.typeTest.insert({"name":"yangzhenyu","age":27});
查询:
db.typeTest.find();
查询age字段为String的数据
db.yzyTest.find({"age":{
$type:'string'
}});
查询age字段为int的数据
db.typeTest.find({"age":{
$type:'int'
}});
db.yangzhenyu.find();
age字段 去重查询:
db.yangzhenyu.distinct("age");
in查询:
db.集合.find({
_id:{$in:["no1","no2"]}
});
not in 查询
db.集合.find({
_id:{$nin:["no1"]}
});
db.yzy.find({},{name:1});
db.集合.find(
query,
projection
)
projection: 指定返回字段
格式: {字段1:1,字段2:1}
查询集合.sort({字段名:1})
db.yangzhenyu.find().sort({age:1})
查询集合.sort({字段名:-1})
db.yangzhenyu.find().sort({age:-1})
查询集合.limit(3);
db.yangzhenyu.find().limit(3);
查询集合.skip(3);
db.yangzhenyu.find().skip(3);
查询集合.limit(pagesize).skip(第几页的pagesize);
//limit相当于pagesize skip相当于第几页的pagesize
1-3
db.yangzhenyu.find().limit(3).skip(0);
3-6
db.yangzhenyu.find().limit(3).skip(3);
6-9
db.yangzhenyu.find().limit(3).skip(6);
相当于mysql的limit函数
查询集合.count();
db.yangzhenyu.find().count();
db.dropDatabase();
//创建固定集合
db.createCollection("yzyTest",{
capped:true,size:6142800,max:1000
});
capped - 如果为true,则创建固定集合。固定集合是指有着固定大小的集合,当达到最大值,会自动覆盖最早的文档,当值为true时,必须指定size参数。
size - 为固定集合指定一个最大值,即字节数。
max - 指定固定集合中包含文档的最大数量。
注:在插入文档时,mongoDB首先检查固定集合的size字段,然后检查max字段。
//查看已有集合
show collections;
//在mongoDB中,不需要主动创建,当你插入文档时会自动创建
db.yzyTest1.insert({"name":"yangzhenyu","age":"27"})
//查看已有集合
show collections;
db.集合.drop();
db.yzyTest1.drop();
//查看已有集合
show collections;
db.getCollection("yzyTest");
db.getCollectionNames();
db.yzyTest.count();
db.yzyTest.dataSize();
db.yzyTest.totalSize();
db.yzyTest.storageSize();
db.yzyTest.renameCollection("yzyRenameTest");
show collections;
db.yzyRenameTest.getDB();
//插入一条数据
db.集合.insertOne({_id:"01",name:"yang",age:"12"});
//插入多条
db.集合.insertMany([{_id:"02",name:"yang",age:"12"},{_id:"03",name:"yang",age:"12"}])
db.集合.update(
<query>,
<update>
)
query :update的查询条件,即where后的语句条件;
update : 更新值,也可理解为sql update中set后面的语句;
注:默认只更新找到的第一条;
例子:
db.yzy.find();
//只更新找到的第一条
db.yzy.update({age:"12"},{$set:{age:"13"}});
db.yzy.find();
实例:
db.yzy.find();
db.yzy.updateOne({age:"12"},{$set:{age:"13"}});
db.yzy.find();
db.yzy.find();
db.yzy.updateMany({age:"12"},{$set:{age:"13"}});
db.yzy.find();
从集合中删除单个文档
db.yzy.deleteOne({age:"13"})
从集合中删除与筛选器匹配的所有文档
db.yzy.deleteMany({age:"13"})
db.yzy.find().forEach(
function(item){
if(item.age >= 12){
db.yzy.updateOne({age:item.age},{$set:{age:"13"}});
}
}
)
db.createUser( {
user: "sa",
pwd: "sa",
roles: [ { role: "root", db: "admin" } ]
});