1.mongoDB与传统数据库概念区别:
总的来说就是:
表table 对应 集合collection
行 row 对应 文档 document (一条数据)
字段 column 对应 域 field
2.mongoDB命令操作:
①启动服务:mongod --dbpath 新建的放置数据库文件的路径 (可写为bat文件)
②启动客户端链接: mongo
③查看数据库:show dbs
④创建数据库:
Use “新数据库名”
此时并未创建成功 必须向里面插入一条数据 而数据又必须存在在集合中 那此时使用命令:
增Db.”要创建的集合名”.insert(json格式数据)
⑤查看集合:
Show collections
查数据
⑥查询集合数据:
1.Db.集合名称.find() //查询该集合下所有数据
2.Db.集合名称.distinct(某列名称) //查询当前集合唯一值的数据
3.Db.集合名称.find({“name”:”zhangsan”}) //查询当前集合下名字等于zhangsan的值
4.Db.集合名称.find({“age”:{$gt:24}}) //查询当前集合下年龄>24的数据
5.Db.集合名称.find({“age”:{$lt:25}}) //查询当前集合下年龄<25的数据
6.Db.集合名称.find({“age”:{$gte:24}}) //查询当前集合下年龄>= 24的数据
7.Db.集合名称.find({“age”:{$lte:25}}) //查询当前集合下年龄<=25的数据
8.Db.集合名称.find({“age”:{$gte:23,$lte:28}}) //查询当前集合下年龄>=23且小于28
9.Db.集合名称.find({“name”:/zhan/}) //模糊查询 当前集合下名称带”zhan”的数据
10.Db.集合名称.find({“name”:/^zhan/}) //模糊查询 当前集合下名称以”zhan”开头的数据
11.Db.集合名称.find({},{“name”:true,”age”:true}) //查询指定列 name,age的所有数据 可以理解为第一个{}为条件,第二个{}为指定列
12.Db.集合名称.find({“name”:”zhangsan”},{“name”:true,”age”:true})
13.Db.集合名称.find().sort({“age”:1}) //按年龄age升序排列
14.Db.集合名称.find().sort({“age”:-1}) //按年龄age降序排列
15.Db.集合名称.find({“name”:”zhangsan”,”age”:23}) //查询当前集合下名字为zhangsan的且年龄为23的数据
16.Db.集合名称.find().limit(6) //查询当前集合下前6条数据
17.Db.集合名称.find().skip(15) //查询当前集合下15条以后的数据
18.Db.集合名称.find().limit(10).skip(5) //查询当前集合下5-10之间的数据
19.Db.集合名称.find({$or:[{“name”:”zhangsan”},{“name”:”lisi”}]}) //查询当前集合下名字为”zhangsan”或者为”lisi”的数据
20.Db.集合名称.findOne() || Db.集合名称.find().limit(1) //查询当前集合下第一条数据
21.Db.集合名称.find().count() //查询数据结果集
删数据
⑦删除集合(表):
db.集合名称.drop()
⑧删除数据库:
db.dropDatabase()
⑨删除数据:
Db.集合名称.remove({“name”:”zhangsan”}) //删除名字为张三的数据
Db.集合名称.remove({“name”:”lisi”},{“justOne”:true}) //删除名字为李四的出现的第一条数据
改数据:
Db.集合名称.update({“name”:”lisi”},{$set:{“age”:28}}) //将名字为lisi的数据的年龄修改为28
若不出现$set的话意思就是替换数据
Db.集合名称.update({“name”:”lisi”},{“age”:28}) //将名字为lisi的数据全部替换来只剩age:28