mongodb命令
来源:互联网 发布:淘宝情侣店铺推荐 编辑:程序博客网 时间:2024/05/29 21:16
mongodb常用操作
use 命令 该命令创建数据库,若已存在将返回现有的数据库.
语法:use database_name
eg: use my_db
注:执行该命令,数据库并没有创建成功,需向数据库中创建集合,
集合创建成功同时数据库创建成功.
show命令
语法:show dbs 查看所有的数据库.
Eg:show dbs
dropDatabase()命令 删除数据库
语法: db.dropDatabase()
注:db 指当前进行操作的数据库.
createCollection()命令 创建集合
语法:db.createCollection(name,options)
参数:name 创建的集合名称
options:可选,指定有关内存大小和索引选项
eg:db.createCollection(“books”);
注:在mongo命令,执行db.books.insert({文档}) 可以直接创建集合和文档
show collections命令 查看数据库下已有的集合
insert()方法插入文档到集合
语法:db.集合名.insert({文档})
Eg:db.books.insert(
{
name:”mongodb”,
class:” 08”,
server:” php”,
title:” 非关系型数据库”,
age:8
})
注: 1、插入数组db.books.insert({country:[“上海”,”北京”,”深圳”]})
2、插入数组嵌套对象db.books.insert({country:[{drive:”深圳驾照”,time:”12-8”},{ drive:”上海驾照”,time:”12-10”},{ drive:”北京驾照”,time:”11-8”}]})
3、插入嵌套对象:db.books.insert({city:{email:”230000”,address:”上海”}})
4、文档中值可以是对象、数组、一些嵌套组合.键是符合mongodb规范字符串.
5、文档可以看做独立存在,彼此之前没有任何联系.
find() 查询集合数据
语法:db.集合名.find({查询条件}).pretty()格式化显示文档
db.集合名.findOne({查询条件}).pretty()只返回查询到的第一条文档.
Eg:db.books.find({sex:”m”}).pretty() 查询性别是m所有文档.
注:mongodb比较操作符
$all
语法{key:{$all:[ “value1”,”value2”,”value3”…..]}}
key:文档中的键名 value匹配的值
含义:匹配键key,并且该文档的键包含指定条件下所有value的文档.
Eg:db.books.find({songs:{$all:[“半斤八两”]}})
db.books.find({country:{$all:[“上海”]}}) 等同于db.books.find({country:”上海”})
注:1、匹配值value是完整的值,若是$all:[“半斤”]是查询不到的.
2、匹配的文档的键必须包含所有的value.
3、常用于匹配数组键.value必须被[]包含.
$gt
语法:{key:{$gt:value}}
含义:匹配的键值大于指定值的所有文档
Eg:db.books.find({age:{$gt:30}}).pretty() age键值大于30的文档
$gte
语法:{key:{$gte:value}}
含义:匹配键值不小于指定值value的所有文档.
Eg:db.books.find({age:{$gte:30}}) age键值不小于(大于等于)30的文档
$It
语法:{key:{$lt:value}}
含义:匹配的键值小于指定值value的所有文档
Eg:db.books.find({age:{$lt:30}}).pretty() age键值小于30的文档
$lte
语法:{key:{$lte:value}}
含义:匹配的键值不大于指定值value的所有的文档.
Eg:db.books.find({age:{$lte:30}}) age键值不大于(小于等于)30的文档
$in
语法:{key:{$in:[value1,value2,value3…..]}}
含义:匹配的键值等于指定数组中任意一个value值的文档
Eg:db.books.find({songs:{$in:[“天使翅膀”,”一首歌”]}}) songs键值匹配任意一个value的文档.
注:只要键值有一个匹配value,就符合该查询条件.
$nin
语法:{key:{$nin:[“value1”,”value2”…..]}}
含义:匹配的键值不等于或不存在指定数组中的任意value值的文档
Eg:db.books.find({songs:{$nin:[“天使翅膀”]}}) 匹配的键值没有跟任意一个value值或没有匹配的文档.
注:若文档中无法匹配,则返回集合所有文档数据
$ne
语法:{key:{$ne:value}}
含义:匹配的键值不等于指定值value的文档.
Eg:db.books.find({age:{$ne:30}}) 匹配的age键值不等于30的文档
db.books.find({country:{$ne:”shanghai”}})
$and
语法:{$and:[{表达式},{表达式}……]}
含义:指定一个至少包含两个表达式的数组,选择出满足该数组中所有表达式的文档
若第一个表达式的值为”false”,余下表达式将不会执行.
Eg:db.books.find({$and:[{name:”you”},{age:{$gt:30}}).pretty()查找name是you,age大于30的文档.
$nor
语法:{$nor:[{表达式},{表达式}……]}
含义:指定至少包含两个表达式的数组,选择出都不满足该数组中所有表达式的文档.
Eg:db.books.find({$nor:[{name:”you”},{name:”mine”},{age:{$lt:30}}]})
除name是you、mine和age小于30的所有文档.
注:若文档中无法匹配,则返回集合所有文档数据
$not
语法:{key:{$not:{表达式}}}
含义:选择出不能匹配表达式的文档,包括没有指定键的文档.
Eg:db.books.find({age:{$not:{$lt:30}}}).pretty() 查询出age不是小于30的所有文档.
注:若文档中无法匹配,则返回集合所有文档数据
$or
语法:{$or:[{表达式},{表达式}……]}
含义:指定一个至少包含两个表达式的数组,选择出至少满足数组中一条表达式的文档
Eg:db.books.find({$or:[{name:”you”},{age:{$lt:30}}]}).pretty()
查询name是you或者age小于30的所有文档.
$exists
语法:{$key:{$exists:<boolean>}}
含义:如果$exists的值为true,选择存在该字段的文档.若值为false,表示该文档不包含该字段.
Eg:db.books.find({country:{$exists:false}}).pretty()
查询集合books中没有country键的文档.
注:若country字段键值为null,表示该键存在.
$mod
语法:{key:{$mod:[divisor,remainder]}}
含义:匹配字段值,对divisor取摸,值等于remainder的文档
$type
语法:{key:{$type: 编号}}
Eg:db.books.find(songs:{$type:4})
db.books.find({$where:”Array.isArray(this.songs)”})
键songs是数组的所有文档
$regex
语法{key:{$regex:’正则表达式’,$options:’i’}}
含义:$regex操作符查询可以对字符串的执行的正则匹配
$options:选项标志
Eg:db.books.find({name:{$regex:’.t’,$options:’i’}}).pretty()
update() 方法
语法:db.集合名.update({选择条件},{数据修改},boolean,boolean)
第一个boolean值:若不存在的更新文档,是否插入修改文档,true插入,默认为false
第二个boolean值:若查询到文档,默认false只更新一条文档.若为true,所有文档全部更新.
Eg:db.books.update({name:” mongodb”},{$set:{age:22}})
操作符
$inc
语法:{$inc:{key:value}}
含义:key键值增加value
Eg:db.books.update({name:”branyt”},{$inc:{age:6}},false,false)查询name为branyt文档,并更新文档中键age的值添加6
$set
语法:{$set:{key:value}}
含义:把键key的值设置成value
Eg:db.books.update({name:”branyt”},{$set:{age:20}},false,false)
$unset
语法:{$unset:{key:1}}
含义:删除键key的值, 1代表删除
Eg:db.books.update({name:”branyt”},{$unset:{age:1}},false,false)
$push
语法:{$push:{key:value}}
含义:把value值添加到数组key中,如果该数组key不存在,则自动创建该数组
Eg:db.books.update({name:”branyt”},{$push:{songs:”nbaaa”}},false,false)
$pushAll
语法:{$pushAll:{key:[value1,value2……]}}
含义:添加多个value值到键key数组中.value可重复添加
Eg:db.books.update({name:”branyt”},{$pushAll:{songs:[“a”,”b”]}},false,false)
$addToSet
语法:{$addToSet:{key:value}}
含义:添加value到键key数组中,只有value值不存在,才会添加
Eg:db.books.update({name:”branyt”},{$addToSet:{songs:”sssaaa”}},false,false)
$pop
语法:{$pop:{key:value}}
含义:删除数组键key中的值,若value为-1删除最后一个值,若value值为1删除第一个值.
Eg:db.books.update({name:”branyt”},{$pop:{songs:-1}},false,false)
$pull
语法:{$pull:{key:value}}
含义:从数组键key中删除等于value的值
Eg:db.books.update({name:”branyt”},{$pull:{songs:”sssaaa”}},false,false)
$pullAll
语法:{$pullAll:{key: value_array } }
含义:从数组键key中删除value_array中相同的值
Eg:db.books.update({name:”branyt”},{$pullAll:{songs:[“ac”,”bc”]}},false,false)
$rename
语法:{$rename:{old_key:new_key}}
含义:更换键名.原来键值会剪切到新的键名中
Eg:db.books.update({name:”branyt”},{$rename:{age:”newage”}},false,false)
remove()方法从集合中删除文档
语法:db.集合名.remove({删除条件})
Eg:db.books.remove({name:”mogodb”})
- MongoDb 命令
- MongoDB 命令
- MongoDB 命令
- MongoDb 命令
- mongodb命令
- mongoDB命令
- mongodb命令
- MongoDB命令
- MongoDB命令
- mongodb 命令
- mongoDB命令
- mongoDB命令
- mongodb命令
- mongodb 命令
- mongodb命令
- mongodb命令
- mongodb命令
- MongoDB 命令
- pymongo 学习中的错误(1)
- Dynamics CRM 通过PowerShell启用AllowDeclarativeWorkflows即自定义XAML WorkFlows
- UITableViewCell移动
- 《DOOM启世录(纪念版) 》此书出了纪念版,好像内容没变
- Oracle数据库用模糊查询、或者= 怎么得不到汉字的搜索结果?
- mongodb命令
- C/C++位操作技巧
- Java开源框架集(全)
- mybatis oracle 返回插入的主键序列号
- Spring boot 设置500 404错误的java方法
- 漫威漫画公司(Marvel Comics)简介
- OC-小知识点
- 【第8周 项目1 - 建立顺序串的算法库】
- log4j 教程