aprendizaje de instrucciones de operación mogodb


(Descargo de responsabilidad: este tutorial es solo para mi estudio y uso. Si alguien usa esta tecnología para violar la ley
, no tiene nada que ver conmigo) (Si hay errores, espero señalarlos. Progresen juntos )


Adjuntar documentación oficial de mongoengine

Uno, operar la base de datos mongodb

1. Crea una base de datos

语法:use 数据库名
注意:如果数据库不存在则创建数据库,否则切换到指定的数据库
注意:如果刚刚创建的数据库不在列表内,如果要显示它,我们需要向刚刚创建的数据库中插入一些数据
	db.star.insert({
    
    name:"tom", age:18, gender:1,address:"北京", isDelete:0})

2. Eliminar la base de datos

Requisito previo: use la base de datos actual (use el nombre de la base de datos)

	db.dropDatabase()

3. Ver todas las bases de datos

	show dbs

4. Ver la base de datos actualmente en uso

	a、db
	b、db.getName()

5. Desconectar

	exit

6. Ver la API de comandos

	help

Dos, establecer operación

1. Verifique qué colecciones están en la base de datos actual

	show collections

2. Crea una colección

	a、
	    语法:db.createCollection("集合名")
	    示例:db.createCollection("class")
	b、
	    语法:db.集合名.insert(文档)
	    示例:db.student.insert({
    
    name:"tom", age:18, gender:1,address:"北京", isDelete:0})
	
	区别:两者的区别在于前者创建的是一个空的集合,后者创建一个空的集合并添加一个文档

3. Elimina la colección en la base de datos actual.

	语法:db.集合名.drop()
	示例:db.class.drop()
	【注】MongoDB中添加数据,字段可以不一样

Tres, operación de documentos

1. Inserte el documento

	a、使用insert()方法插入文档
       	语法:db.集合名.insert(文档)
        插入一个:db.student.insert({
    
    name:"刘欢", age:19,address:"北京", isDelete:0})
        
  		语法:db.集合名.insert([文档1, 文档2, ……, 文档n])
  		插入多个:db.student.insert([{
    
    name:"马德华", age:17,address:"北京", isDelete:0},{
    
    name:"凤凰女", age:20,address:"上海", isDelete:0}])
        
   	b、使用save()方法插入文档
    	语法:db.集合名.save(文档)
        说明:如果不指定_id字段,save()方法类似于insert()方法。如果指定_id字段,则会更新_id字段的数据
        示例1:db.student.save({
    
    name:"科比", age:22,address:"洛杉矶", isDelete:0})
        示例2:db.student.save({
    
    _id:ObjectId("59950962019723fe2a0d8d17"),name:"姚明", age:23,address:"休斯顿", isDelete:0})
       【如果id存在,更新数据,不存在添加数据】

2. Actualización de documentos

	a、update()方法用于更新已存在的文档
	语法:
	db.集合名.update(
	    query,     # 查询条件
	    update,    # 更新什么
	    {
    
              # 附加功能
	        upsert:<boolean>,
	        multi:<boolean>
	    }
	)
	参数说明:
	    query:update的查询条件,类似于sql里update语句内where后面的内容
	    update:update的对象和一些更新的操作符($set,$inc)等,$set直接更新,$inc在原有的基础上累加后更新
	    upsert:可选,如果不存在update的记录,是否当新数据插入,true为插入,False为不插入,默认为false
	    multi:可选,mongodb默认是false,只更新找到的第一条记录,如果这个参数为true,就按照条件查找出来的数据全部更新

	需求:将刘德华的年龄更新为25
	示例:
		db.student.update({
    
    name:"刘德华"},{
    
    $set:{
    
    age:25}})
		累加:db.student.update({
    
    name:"刘德华"},{
    
    $inc:{
    
    age:25}})  
		全改:db.student.update({
    
    name:"刘德华"},{
    
    $set:{
    
    age:42}},{
    
    multi:true})  
	b、save()方法通过传入的文档替换已有文档
	必须有_id这个键才是更新
	   语法:
	       db.集合名.save(
	           document
	       )
	   参数说明:
	       document:文档数据

3. Eliminación de documentos

	说明:在执行remove()函数前,先执行find()命令来判断执行的条件是否存在是一个良好习惯
	也可以使用查询中的and和or
	语法:
	    db.集合名.remove(
	        query,
	        {
    
    
	            justOne:<boolean>
	        }
	    )
	参数说明:
	    query:可选,删除的文档的条件
	    justOne:可选,如果为true或1,则只删除一个文档
	
	示例:db.student.remove({
    
    name:"刘德华"})

4. Consulta de documentos

	a、find()方法
	    语法:db.集合名.find()
	    查询集合下所有的文档(数据):db.student.find()
	    
	b、find()方法查询指定列
	    语法:db.集合名.find(
	        query,
	        {
    
    
	            <key>:1,
	            <key>:1
	        }
	    )
	    参数说明:
	        query:查询条件
	        key:要显示的字段,1表示显示
	
	示例:
		查询指定条件,只显示name和age
	      db.student.find({
    
    isDelete:0},{
    
    name:1,age:1})
	    查询所有只显示name和age键值
	      db.student.find({
    
    },{
    
    name:1,age:1}) 
	
	c、pretty()方法以格式化方式来显示文档
	    示例:db.student.find().pretty()
	    其实就是字典形式显示
	
	d、findOne()方法查询匹配结果的第一条数据
	    示例:db.student.findOne({
    
    isDelete:0})

5. Operador de condición de consulta

	作用:条件操作符用于比较两个表达式并从Mongodb集合中获取数据
	a、大于 - $gt   greater than
	    语法:db.集合名.find({
    
    <key>:{
    
    $gt:<value>}})
	    示例:db.student.find({
    
    age:{
    
    $gt:20}})
	b、大于等于 - $gte  equal
	    语法:db.集合名.find({
    
    <key>:{
    
    $gte:<value>}})
	c、小于 - $lt   less than
	    语法:db.集合名.find({
    
    <key>:{
    
    $lt:<value>}})
	d、小于等于 - $lte
	    语法:db.集合名.find({
    
    <key>:{
    
    $lte:<value>}})
	e、大于等于 和 小于等于 - $gte$lte
	    语法:db.集合名.find({
    
    <key>:{
    
    $gte:<value>,$lte:<value>}})
	f、等于 - :
	    语法:db.集合名.find({
    
    <key>:<value>})
	g、使用_id进行查询
	    语法:db.student.find({
    
    "_id":ObjectId("id值")})
	    示例:db.student.find({
    
    "_id":ObjectId("5995084b019723fe2a0d8d14")})
	h、查询某个结果集的数据条数
	    db.student.find().count()
	i、查询某个字段的值当中是否包含另一个值
	    语法:
	    示例:db.student.find({
    
    name:/love/}) 包含love
	j、查询某个字段的值是否以另一个值开头
	    示例:db.student.find({
    
    name:/^li/}) 开头
	    示例:db.student.find({
    
    name:/li$/}) 结尾

6. Consulta condicional yo

	a、AND条件
		语法:db.集合名.find({
    
    条件1,条件2,……,条件n})
		示例:db.student.find({
    
    isDelete:0,age:{
    
    $gt:16}})
		
	b、OR条件
		语法:
		    db.集合名.find(
		        {
    
    
		            $or:[{
    
    条件1},{
    
    条件2},……,{
    
    条件n}]
		        }
		    )
		示例:db.student.find({
    
    $or:[{
    
    age:17},{
    
    age:{
    
    $gte:20}}]})
		
	c、AND和OR联合使用
		语法:
		    db.集合名.find(
		        {
    
    
		            条件1,
		            条件2,
		            $or:[{
    
    条件3},{
    
    条件4}]
		        }
		    )
		    sex是女
		    age>30
		    height=160 or height=158
		示例:db.star.find({
    
    sex:'女',age:{
    
    $gt:30},$or:[{
    
    height:160},{
    
    height:158}]})

7 、 límite 、 saltar

	limit 偏移量,数量   20条数据,每页显示4条
	
	a、limit():读取指定数量的数据记录
	    db.student.find().limit(3)
	b、skip():跳过指定数量的数据
	    db.student.find().skip(3)
	c、skip与limit联合使用
	    通常用这种方式来实现分页功能
	    示例:db.student.find().skip(3).limit(3)
	    20条数据,每页显示4条,直接得到第三页所有数据
	    db.star.find().skip((3-1)*4).limit(4)

8. Ordenar

	语法:db.集合名.find().sort({
    
    <key>:1|-1})
	示例:db.student.find().sort({
    
    age:1})
	注意:1表示升序,-1表示降序
	
	db.star.find({
    
    sex:'女'}).sort({
    
    age:1,height:-1})
	先按照年龄升序排列,然后按照身高降序排列

Supongo que te gusta

Origin blog.csdn.net/weixin_43633797/article/details/108510304
Recomendado
Clasificación