Operaciones básicas de adición, eliminación, modificación y consulta de mongodb

mongodb

  • El número de puerto predeterminado de MYSQL: 3306

  • El número de puerto predeterminado de Mongodb: 27017

    Sistema de gestión de bases de datos no relacionales NOSQL

    Se utiliza para el almacenamiento de datos a gran escala (p. Ej., Google, Facebook) no requiere un modelo fijo y se puede escalar horizontalmente sin operaciones innecesarias.

¿Qué es MongoDB?

Escrito en C ++, es un sistema de base de datos de código abierto basado en almacenamiento de archivos distribuido.

En el caso de una carga alta, agregar más nodos puede garantizar el rendimiento del servidor.

  • Proporcione soluciones escalables de almacenamiento de datos de alto rendimiento para aplicaciones WEB.
  • Los datos de MongoDB se almacenan como un documento y la estructura de datos se compone de pares clave-valor (clave => valor)
  • Los documentos MongoDB son similares a los objetos JSON y los valores de campo pueden incluir otros documentos, matrices y matrices de documentos

Análisis de conceptos

SQL MongoDB explique
mesa colección colocar
fila (una fila, un registro) documento Documentación
columna campo Dominio (par clave-valor)
índice índice índice
mesa se une No se admite la consulta de conexión de tabla
Clave primaria Clave primaria Clave principal, mongoDB establece automáticamente el campo _id como clave principal

base de datos

db. Las diferentes bases de datos se colocan en diferentes archivos.

show dbs puede mostrar una lista de todas las bases de datos

nombre de almacenamiento de datos:

No puede ser una cadena de caracteres (""), sin espacios,. ,, /, \ 0 (caracteres vacíos) Es mejor no utilizar chino (pueden aparecer caracteres confusos en chino), todo en minúsculas, hasta 64 bytes

Documentación:

Par clave-valor, BSON

{”site":"xxxxx","age":25}
Cliente y servicio de base de datos
MYSQL / Oracle mongod

Nota:

  • Los pares clave-valor del documento están ordenados
  • Distinguir tipo y caso
  • No puede haber claves duplicadas,
  • Clave: cadena (utf-8), no puede contener caracteres vacíos
  • . $ Tiene un significado especial, solo se usa en un entorno específico
  • La clave al principio de _ está reservada (no es estrictamente necesaria)

objeto

onject_id puede ser de cualquier tipo, generalmente el valor predeterminado es el tipo de objeto

La marca de tiempo creada se guarda en onject_id, por lo que no es necesario que la cree usted mismo (marca de tiempo)

[Error en la transferencia de la imagen del enlace externo. El sitio de origen puede tener un mecanismo anti-hotlinking. Se recomienda guardar la imagen y subirla directamente (img-IpPiTmmw-1611392732234) (C: \ Users \ jry \ AppData \ Roaming \ Typora \ typora-user-images \ image-20210123134431496.png)]

Obtenga la hora de creación del documento a través de la función getTimestap

Convertir a forma de cadena por str

fecha

[Error en la transferencia de la imagen del enlace externo. El sitio de origen puede tener un mecanismo anti-sangrado. Se recomienda guardar la imagen y subirla directamente (img-iqoE0EMq-1611392732240) (C: \ Users \ jry \ AppData \ Roaming \ Typora \ typora-user-images \ image-20210123134725981.png)]

[Error en la transferencia de la imagen del enlace externo. El sitio de origen puede tener un mecanismo anti-hotlinking. Se recomienda guardar la imagen y subirla directamente (img-eBUxv13Z-1611392732243) (C: \ Users \ jry \ AppData \ Roaming \ Typora \ typora-user-images \ image-20210123134808410.png)]

Operaciones básicas de MongoDB

Uno, crea una base de datos

usar xxx

Inserte la descripción de la imagen aquí

Pero no hay contenido en la base de datos, se mostrará después de insertar el contenido.

[Error en la transferencia de la imagen del enlace externo. El sitio de origen puede tener un mecanismo anti-hotlinking. Se recomienda guardar la imagen y subirla directamente (img-aYqDZ4K6-1611392732249) (C: \ Users \ jry \ AppData \ Roaming \ Typora \ typora-user-images \ image-20210123135240492.png)]

Dos, borra la base de datos

db.dropDatabase ()

Cambie a otra base de datos para ver que se ha eliminado
Inserte la descripción de la imagen aquí

Tres, crea una colección

  • db.createCollection ("employee") crea una colección de employee
  • db.mycol (nombre de la colección) .insert ({"_ id": 01, "name": "马云"}) Insertar directamente, no hay colección creará automáticamente una colección mycol
  • mostrar colecciones muestra las colecciones en la base de datos
  • db ver la base de datos actual

Inserte la descripción de la imagen aquí

Cuarto, elimine la colección

db.tc (nombre de la colección) .drop ()
Inserte la descripción de la imagen aquí

Cinco, inserta documentos en la colección.

db.collection name.insert (document) Si _id existe, se lanzará la excepción de clave principal y no se guardarán los datos actuales

db.collection name.save (document) Si _id existe, actualice los datos, si no existe, inserte los datos

Insertar un registro

var document name = db.collection name.insert ({insertar contenido del par clave-valor})

Inserte la descripción de la imagen aquí

Insertar varios registros

var nombre del documento = db.nombre de la colección.insertarOne ({})

Inserte la descripción de la imagen aquí

Insertar varios documentos

var document name = db.collection name.insertMany ({})

Inserte la descripción de la imagen aquí

Inserte la descripción de la imagen aquí

Insertar matriz

1. Primero crea una matriz
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí

En sexto lugar, la actualización del documento.

db.collection name.updata (

{consulta — condición de la consulta}

upsert – true: insertar si no existe, actualizar si existe, falso: no actualizar

{$ set "{valor actualizado}}: por qué actualizar el valor

multi: verdadero / falso — verdadero: actualiza todos los valores calificados, falso: actualiza solo el primer valor calificado

)

Actualizar un valor

db.employee.update ({"sex": "男"}, {$ set: {"age": 18}})

Inserte la descripción de la imagen aquí

Todas las actualizaciones que cumplen las condiciones

db.employee.update ({"sex": "男"}, {$ set: {"age": 18}}, {multi: true} )

Inserte la descripción de la imagen aquí

Siete, consulta de documentos

1. Marca de condición
$ gt >
$ gte > =
$ lt <
$ lte <=
$ hacer ! =
$ eq 、 =

Consultar registros cuya antigüedad sea inferior a 19

Inserte la descripción de la imagen aquí

Consultar registros cuya antigüedad sea menor o igual a 19

Inserte la descripción de la imagen aquí

Compruebe si la edad es menor de 30 años y la dirección está en Yan'an

db.employee.find ({"edad": {$ lt: 20}, "dirección": "延安"})

Inserte la descripción de la imagen aquí

2. Y O condición

Y

db.employee.find ({' Error de análisis de KaTeX: esperado'} ', obtuvo' EOF 'al final de la entrada: y': [{"edad": { lt: 20}}, {“dirección”: “延安” }]})

Inserte la descripción de la imagen aquí

'$ and' -y carácter relacional

[{Condición 1}, {Condición 2}]

O

db.employee.find ({' Error de análisis de KaTeX: esperado'} ', obtuvo' EOF 'al final de la entrada: o': [{"edad": { lt: 20}}, {“dirección”: “延安” }]}))
Inserte la descripción de la imagen aquí
db.employee.find ({" Error de análisis de KaTeX: esperado '}', obtuvo 'EOF' al final de la entrada:…": "女"}, {"edad": { gt: 10}} ]})

El género es femenino, edad> 10

Consulta sobre robo 3T

Inserte la descripción de la imagen aquí

Y y O combinados

Primero y luego o

db.employee.find ({"sal": { Error de análisis de KaTeX: 'EOF' esperado, obtuvo '}' en la posición 9: gt: 17000} ̲, ' o': [{"sex": "女"}, {"Dirección": "延安"}]})

db.employee.find ({“sal”: { Error de análisis de KaTeX: 'EOF' esperado, obtenido '}' en la posición 9: gt: 19000} ̲, " o": [{“sex”: “女”}, {"Dirección": "延安"}]})

Inserte la descripción de la imagen aquí

db.getCollection('employee').find({"age":{$lt:30},"address":"郑州"})db.employee.find({"age":{$lt:30},"address":"郑州"})

//查询age小于30并且地址是郑州的document
db.employee.find({'$and':[{"age":{$lt:30}},{"address":"郑州"}]}) db.getCollection('employee').find({})

//查询age小于30或address是洛阳document
db.employee.find({'$or':[{"age":{$lt:30}},{"address":"洛阳"}]}) 

//查询sex为女或address是南京的document
db.employee.find({'$or':[{"sex":"女"},{"address":"南京"}]})  

// (price>70 and (publish="机械工业出版社" or public="新疆儿童出版社"))
db.db_book.find({"price":{$gt:70},'$or':[{"publish":"机械工业出版社"},{"publish":"新疆儿童出版社"}]})

8. Consulta aproximada

  • /contenido/
  • / ^ Lo que comienza con /
  • / Termina con $ /

Aquellos con Jiang en su nombre

db.employee.find ({"nombre": / 蒋 /})

Inserte la descripción de la imagen aquí

empezar con la palabra caballo en el nombre

db.employee.find ({"nombre": / ^ 马 /})

Inserte la descripción de la imagen aquí

El nombre que termina con la palabra según

db.employee.find ({"nombre": / 依 $ /})

Inserte la descripción de la imagen aquí

Nueve, borra documentos

db.collection name.remove ({especificar condiciones})

db.employee.remove({_id:1002})  删除_id为1002的文档

db.collection name.remove (condición de eliminación, 1)

db.employee.remove({name:/诸/},1)  删除名字中有诸的,并且只删除一个文档

El nombre que termina con la palabra según

db.employee.find ({"nombre": / 依 $ /})

Supongo que te gusta

Origin blog.csdn.net/rraxx/article/details/113058327
Recomendado
Clasificación