mongodb中数据的增删改查
1.写入数据
1)普通数据的添加
mongodb中数据是 Bson格式,类json格式
mongodb 使用 insert() 或 save() 方法向集合中插入文档,语法如下:
db.COLLECTION_NAME.insert(document);
示例:db.goods.insert({name:'phone',price:1000,weight:135,number:35})
2)多维数据对象添加
示例:
db.goods.insert({name:'xiaomi5',price:1999,weight:156,number:45,area:{province:'beijing',city:'beijing'}})
3)数组信息的添加
示例:
db.goods.insert({name:'xiaomimax',price:2000,weight:180,number:100,area:{province:'beijing',city:'beijing'},color:['blank','white','red']})
2.数据查询
1)笼统方式查询
db.数据表.find() //查询数据表的全部数据
db.数据表.findOne() //查询数据表的第一条数据并转化数据格式
2)条件限制查询
条件:Bson对象
例如:db.goods.find({name:‘phone’}) 查询name=phone的记录信息
(类似 select * from 表名 where name=’phone’)
db.数据表.find(条件)
db.数据表.findOne(条件) //返回满足结果里的第一条信息
3)范围条件查询
关键字:$gt $lt $gte $lte
mysql关键字: > < >= <=
查询价格大于1005元的商品
db.goods.find({price:{‘$gt’:1005}})
注意:关键字$gt左右必须有引号,单双都可以
命令行:单双引号都可以
php:只能使用单引号
4)设置多个查询条件
相当于mysql里面的and条件操作
db.数据表.find({条件,条件,条件})
例如:要求价格大于1000并且 重量小于100的
db.goods.find({price:{‘$gt’:1000},weight:{‘$lt’:100}})
或者通过严格等于的条件进行查询复合查询
例如:价格大于1000,并且重量等于50
db.goods.find({price:{'$gt':1000},weight:50})
5)限制查询字段
们刚才的查询,是显示的所有的信息字段,但是呢,实际情况操作中,我们不一定全部都用到,那么可以就需要做一个字段输出查询的一个限制。如果全部取出来的话,对于内存和带宽都一定影响,我们按需去操作就可以了。
db.表.find({条件},{字段:1/0,字段:1/0}
1: 查询此字段
0: 排除此字段
规则:
就是要输出就全部输出,要不输出就全部不输出。_id除外,可以随意设置0,1
3.修改数据
db.表.update({条件},{‘$set’:{字段:值,字段:值......}})
db.表.update({条件},{字段:值,字段:值......})
有$set的修改:只修改设置的字段,其他字段不变化
没有$set的修改:只修改设置的字段,没有修改的字段就删除了(除了_id字段)
4.删除数据
1)删除记录
db.表.remove(条件)
2)删除字段
db.表.update({条件},{‘$unset’:{字段:1/字段:0}})