欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MongoDB数据库 : 基础

程序员文章站 2023-09-29 13:16:53
三元素:数据库 集合 文档(json的扩展bson) 服务启动重启停止: sudo service mongodb start(stop,restart) 修改配置文件 /etc/mongodb.conf添加 smallfiles=true 查看当前数据库 db 查看所有数据库 show dbs 查 ......

三元素:数据库 集合 文档(json的扩展bson)

服务启动重启停止: sudo service mongodb start(stop,restart)

修改配置文件 /etc/mongodb.conf
添加 smallfiles=true

查看当前数据库 db

查看所有数据库 show dbs

查看数据库信息 db.stats()

切换数据库 use 数据库名(没有则只是指向这个数据库,但不创建,插入数据创建集合时才会创建)

删除当前指向数据库 db.dropDatabase()

创建集合 db.createCollection('名字',{opt})

创建固定集合(size大小单位kb,max文档最大条数):db.createCollection('集合名',{capped:true,size:5,max:5})

查看集合 show collections

删除集合 db.集合名.drop()

插入数据(会自动创建集合): db.集合名.insert({文档1,文档2,...})

简单查询: db.集合名.find()

修改一条文档(不加multi修改一条,multi:true修改多条) db.update({条件},{修改的内容},{multi:true})

修改一条文档中的某些键值($set) db.update({},{$set:{键:'值'}})

保存: db.集合名.save()

删除(justOne:true删除一条,默认多条): db.集合名.remove({条件},{justOne:默认false})

查询返回第一条: db.集合名.findOne({条件})
结果格式化: db.集合名.find({}).pretty()

比较运算符:
等于:默认就是等于 如(查询title为3的文档) db.sub.find({title:3})

小于($lt) 查询(title小于5的) db.sub.find({title:{$lt:5}})

大于($gt) 查询(title大于5的) db.sub.find({title:{$gt:5}})

还有大于等于:$gte,小于等于:$lte,不等于:$ne

逻辑运算符与(逗号) 如查询名字是xx,性别为true的:db.stu.find({name:'xx',gender:true})

或($or[]) 查询名字是xx或者xxx的:db.stu.find({$or:[{name:'xx'},{name:'xxx'}]})

范围运算符($in:[],$nin:[]):如查询年龄在18-29的:db.stu.find({age:{$in:[18,29]}})

正则表达式(用// 或者$regex):查询姓王的:db.find({name:/^王/})

自定义函数($where+函数) 如查询年龄大于20的:db.stu.find({$where:function(){return this.age<20}})

limit(获取多少条文档)如获取10条: db.集合.find().limit(10)

skip(跳过几条) 如跳过2条: db.jihe.find().skip(2)

投影(显示指定的字段显示设置1,不显示设置0_id列默认显示):如显示name和age db.find({条件},{name:1,age:1})

排序(sort,值为1升序,值为-1降序):db.集合.find().sort({字段:1,....})

统计(count()) db.集合.count({条件})

去重(distinct()): db.集合.distinct('去重字段',{条件})