Documentos de Académico
Documentos de Profesional
Documentos de Cultura
27022023_C1_202331)
1. Área personal
2. Mis cursos
3. Bases de datos avanzadas (WILLIAM RUIZ 27022023_C1_202331)
4. Unidad de aprendizaje I
5. Actividad 1 - Diseño y operaciones CRUD en Bases de datos NoSQL
Descripción de la actividad
https://elibro.net/es/ereader/biblioibero/58524
Entregable
El log del repositorio Git debe evidenciar el trabajo realizado por el grupo de
trabajo.
COLECCIONES:
Deportistas:
Db.deportistas.insertMany(
[
{
"Id_jugador": 1,
"nombre": "Alex Meret",
"edad": 25,
"posicion": "Portero",
"equipo": "Napoles",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 3,
"nombre": "Min-Jae Kim",
"edad": 26,
"posicion": "Defensa",
"equipo": "Napoles",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 22,
"nombre": "Giovanni Di Lorenzo",
"edad": 29,
"posicion": "Defensa",
"equipo": "Napoles",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 17,
"nombre": "Matias Olivera",
"edad": 25,
"posicion": "Defensa",
"equipo": "Napoles",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 13,
"nombre": "Amir Rrahmani",
"edad": 29,
"posicion": "Defensa",
"equipo": "Napoles",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 7,
"nombre": "Eljif Elmas",
"edad": 23,
"posicion": "Centrocampista",
"equipo": "Napoles",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 20,
"nombre": "Piotr Zielinski",
"edad": 28,
"posicion": "Centrocampista",
"equipo": "Napoles",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 68,
"nombre": "Stanislav Lobotka",
"edad": 28,
"posicion": "Centrocampista",
"equipo": "Napoles",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 11,
"nombre": "Hirving Lozano",
"edad": 27,
"posicion": "Centrocampista",
"equipo": "Napoles",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 9,
"nombre": "Victor Osimhen",
"edad": 24,
"posicion": "Delantero",
"equipo": "Napoles",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 77,
"nombre": "Khvicha Kvratskhelia",
"edad": 22,
"posicion": "Delantero",
"equipo": "i",
"dateCreated": {"$date":"2023-02-28"}
}
])
Del equipo de futbol Liberpool:
Db.deportistas.insertMany (
[
{
"Id_jugador": 1,
"nombre": "Alisson Becker",
"edad": 30,
"posicion": "Portero",
"equipo": "Liberpool",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 2,
"nombre": "Joe Gómez",
"edad": 25,
"posicion": "Defensa",
"equipo": "Liberpool",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 21,
"nombre": "Kostas Tsimikas",
"edad": 26,
"posicion": "Defensa",
"equipo": "Liberpool",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 22,
"nombre": "Calvin Ransay",
"edad": 19,
"posicion": "Defensa",
"equipo": "Liberpool",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 32,
"nombre": "Joel Matip",
"edad": 31,
"posicion": "Defensa",
"equipo": "Liberpool",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 3,
"nombre": "Fabinho",
"edad": 29,
"posicion": "Centrocampistas",
"equipo": "Liberpool",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 7,
"nombre": "James Miner",
"edad": 37,
"posicion": "Centrocampistas",
"equipo": "Liberpool",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 6,
"nombre": "Thiago Alcántamara",
"edad": 31,
"posicion": "Centrocampistas",
"equipo": "Liberpool",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 8,
"nombre": "Naby Keita",
"edad": 28,
"posicion": "Centrocampistas",
"equipo": "Liberpool",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 9,
"nombre": "Roberto Fermino",
"edad": 31,
"posicion": "Delantero",
"equipo": "Liberpool",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 11,
"nombre": "Mohamed Salah",
"edad": 30,
"posicion": "Delantero",
"equipo": "Liberpool",
"dateCreated": {"$date":"2023-02-28"}
}
])
Del equipo de futbol Ajax:
Db.deportistas.insertMany (
[
{
"Id_jugador": 12,
"nombre": "Jerónimo Rulli",
"edad": 30,
"posicion": "Portero",
"equipo": "Ajax",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 2,
"nombre": "Jurriën Timber",
"edad": 21,
"posicion": "Defensa",
"equipo": "Ajax",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 3,
"nombre": "Calvin Bassey",
"edad": 23,
"posicion": "Defensa",
"equipo": "Ajax",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 15,
"nombre": "Devyne Rensch",
"edad": 20,
"posicion": "Defensa",
"equipo": "Ajax",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 5,
"nombre": "Owen Wijndal",
"edad": 23,
"posicion": "Defensa",
"equipo": "Ajax",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 4,
"nombre": "Edson Álvarez",
"edad": 25,
"posicion": "Mediocampista",
"equipo": "Ajax",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 8,
"nombre": "Kenneth Taylos",
"edad": 20,
"posicion": "Mediocampista",
"equipo": "Ajax",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 7,
"nombre": "Steven Bergwijn",
"edad": 25,
"posicion": "Mediocampista",
"equipo": "Ajax",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 23,
"nombre": "Steven Berhuis",
"edad": 31,
"posicion": "Mediocampista",
"equipo": "Ajax",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 10,
"nombre": "Dusan Tadic",
"edad": 31,
"posicion": "Mediocampista",
"equipo": "Ajax",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 9,
"nombre": "Brian Brobbey",
"edad": 21,
"posicion": "Delantero",
"equipo": "Ajax",
"dateCreated": {"$date":"2023-02-28"}
}
])
Del equipo de futbol Rangers:
Db.deportistas.insertMany (
[
{
"Id_jugador": 1,
"nombre": "Allan McGregor",
"edad": 41,
"posicion": "Portero",
"equipo": "Rangers",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 6,
"nombre": "Connor Goldson",
"edad": 30,
"posicion": "Defensa",
"equipo": "Rangers",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 26,
"nombre": "Ben Davies",
"edad": 27,
"posicion": "Defensa",
"equipo": "Rangers",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 2,
"nombre": "James Tavernier",
"edad": 31,
"posicion": "Defensa",
"equipo": "Rangers",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 31,
"nombre": "Borna Barisio",
"edad": 30,
"posicion": "Defensa",
"equipo": "Rangers",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 4,
"nombre": "Jhon Lundstram",
"edad": 29,
"posicion": "Mediocampistas",
"equipo": "Rangers",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 17,
"nombre": "Rabbi Matondo",
"edad": 22,
"posicion": "Mediocampistas",
"equipo": "Rangers",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 18,
"nombre": "Glen Kamara",
"edad": 27,
"posicion": "Mediocampistas",
"equipo": "Rangers",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 25,
"nombre": "Kemar Roofe",
"edad": 30,
"posicion": "Delantero",
"equipo": "Rangers",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 20,
"nombre": "Alfredo Morelos",
"edad": 26,
"posicion": "Delantero",
"equipo": "Rangers",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_jugador": 7,
"nombre": "Lenis Hagi",
"edad": 24,
"posicion": "Delantero",
"equipo": "Rangers",
"dateCreated": {"$date":"2023-02-28"}
}
]
Equipos:
Db.deportistas.insertMany (
[{"Id_equipo": "AJX",
"nombre": "Ajax",
"pais": "Amsterdam, Paises Bajos"
},
{"Id_equipo": "LFC",
"nombre": "Liberpool",
"pais": "Liberpool, Inglaterra"
},
{"Id_equipo": "NAP",
"nombre": "Napoles",
"pais": "Lapoles, Italia"
},
{"Id_equipo": "RAN",
"nombre": "Rangers",
"pais": "Glasgow, Escocia"
}]
)
Encuentros:
Db.encuentros.insertMany (
[
{
"estadio": "Johan Cruyff Arena",
"fecha": {"$date":"2022-10-26"} ,
"equipo_local": {
"nombre": "Ajax",
"goles": 0
},
"equipo_visitante": {
"nombre": "Liberpool",
"goles": 3
},
"arbitro": {
"nombre": "Sanchez Martínez"
}
},
{
"estadio": "Johan Cruyff Arena",
"fecha": {"$date":"2022-10-04"} ,
"equipo_local": {
"nombre": "Ajax",
"goles": 1
},
"equipo_visitante": {
"nombre": "Napoles",
"goles": 6
},
"arbitro": {
"nombre": "François Letexier"
}
},
{
"estadio": "Johan Cruyff Arena",
"fecha": {"$date":"2022-09-07"} ,
"equipo_local": {
"nombre": "Ajax",
"goles": 4
},
"equipo_visitante": {
"nombre": "Rangers",
"goles": 0
},
"arbitro": {
"nombre": "Tobias Stieler"
}
},
{
"estadio": "Anfield",
"fecha": {"$date":"2022-10-26"} ,
"equipo_local": {
"nombre": "Liberpool",
"goles": 2
},
"equipo_visitante": {
"nombre": "Ajax",
"goles": 1
},
"arbitro": {
"nombre": "Artur Soares Dias"
}
},
{
"estadio": "Anfield",
"fecha": {"$date":"2022-11-01"} ,
"equipo_local": {
"nombre": "Liberpool",
"goles": 2
},
"equipo_visitante": {
"nombre": "Napoles",
"goles": 0
},
"arbitro": {
"nombre": "Tobias Stieler"
}
},
{
"estadio": "Anfield",
"fecha": {"$date":"2022-10-04"} ,
"equipo_local": {
"nombre": "Liberpool",
"goles": 2
},
"equipo_visitante": {
"nombre": "Rangers",
"goles": 0
},
"arbitro": {
"nombre": "Clément Turpin"
}
},
{
"estadio": "Estadio Diego Armando Maradona",
"fecha": {"$date":"2022-10-12"} ,
"equipo_local": {
"nombre": "Napoles",
"goles": 4
},
"equipo_visitante": {
"nombre": "Ajax",
"goles": 2
},
"arbitro": {
"nombre": "Felix Zwayer"
}
},
{
"estadio": "Estadio Diego Armando Maradona",
"fecha": {"$date":"2022-09-07"} ,
"equipo_local": {
"nombre": "Napoles",
"goles": 4
},
"equipo_visitante": {
"nombre": "Liberpool",
"goles": 1
},
"arbitro": {
"nombre": "Del Cerro Grande"
}
},
{
"estadio": "Estadio Diego Armando Maradona",
"fecha": {"$date":"2022-10-26"},
"equipo_local": {
"nombre": "Napoles",
"goles": 3
},
"equipo_visitante": {
"nombre": "Rangers",
"goles": 0
},
"arbitro": {
"nombre": "Halil Umut Meler"
}
},
[
{
"estadio": "Ibrox Stadium",
"fecha": {"$date":"2022-11-01"} ,
"equipo_local": {
"nombre": "Rangers",
"goles": 1
},
"equipo_visitante": {
"nombre": "Ajax",
"goles": 3
},
"arbitro": {
"nombre": "Glenn Nyberg"
}
},
{
"estadio": "Ibrox Stadium",
"fecha": {"$date":"2022-10-12"} ,
"equipo_local": {
"nombre": "Rangers",
"goles": 1
},
"equipo_visitante": {
"nombre": "Liberpool",
"goles": 7
},
"arbitro": {
"nombre": "Slavko Vinčić"
}
},
{
"estadio": "Ibrox Stadium",
"fecha": {"$date":"2022-10-14"},
"equipo_local": {
"nombre": "Rangers",
"goles": 0
},
"equipo_visitante": {
"nombre": "Napoles",
"goles": 3
},
"arbitro": {
"nombre": "Mateu Lahoz"
}
}
]
Árbitros:
Db.arbitros.insertMany (
[
{
"nombre": "Sanchez Martínez",
"nacionalidad": "España",
"experiencia": "Primera División de España 2013"
},
{
"nombre": "François Letexier",
"nacionalidad": "Francia",
"experiencia": "FIFA referee since 2017"
},
{
"nombre": "Tobias Stieler",
"nacionalidad": "Aleman",
"experiencia": "FIFA referee, and is ranked as a UEFA"
},
{
"nombre": "Artur Soares Dias",
"nacionalidad": "Portugués",
"experiencia": "FIFA referee 2010, and is ranked as a UEFA"
},
{
"nombre": "Clément Turpin",
"nacionalidad": "Frances",
"experiencia": "Turpin fue nombrado árbitro FIFA en 2010"
},
{
"nombre": "Felix Zwayer",
"nacionalidad": "Aleman",
"experiencia": "Es un árbitro FIFA, y se encuentra dentro del grupo élite de la UEFA
2012"
},
{
"nombre": "Carlos del Cerro Grande",
"nacionalidad": "Español",
"experiencia": "Pertenece al Comité de Árbitros de la Comunidad de Madrid
2011."
},
{
"nombre": "Halil Umut Meler",
"nacionalidad": "Turkish",
"experiencia": "FIFA listed since 2017 and a member of the UEFA Elite since 2022"
},
{
"nombre": "Glenn Nyberg",
"nacionalidad": "Swedish",
"experiencia": "Allsvenskan referee since 2013 and a full international referee for
FIFA since 2016"
},
{
"nombre": "Slavko Vinčić",
"nacionalidad": "Slovenian",
"experiencia": "Referee for FIFA since 2010. Vinčić went to UEFA Euro 2012"
},
{
"nombre": "Mateu Lahoz",
"nacionalidad": "Español",
"experiencia": "Referee with experience in several editions of the FIFA World Cup
2008"
}
])
Entrenadores:
Db.entrenadores.insertMany (
[
{
"Id_entrenador": 1,
"nombre": "Luciano Spalletti",
"equipo": "Napoles",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_entrenador": 2,
"nombre": "Jurgen Klopp",
"equipo": "Liberpool",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_entrenador": 3,
"nombre": "Erik ten Hag",
"equipo": "Liberpool",
"dateCreated": {"$date":"2023-02-28"}
},
{
"Id_entrenador": 4,
"nombre": "Dalcio Giovagnoli ",
"equipo": "Rangers",
"dateCreated": {"$date":"2023-02-28"}
}
])
Tabla de Posiciones:
Db.posiciones.insertMany (
[
{
"posicion" : 1,
"Equipo" : "Napoles",
"Puntos" : 15
},
{
"posicion" : 2,
"Equipo" : "Liberpool",
"Puntos" : 15
},
{
"posicion" : 3,
"Equipo" : "Ajax",
"Puntos" : 15
},
{
"posicion" : 4,
"Equipo" : "Rangers",
"Puntos" : 0
}
])
Tabla de Resultados:
Db.resultados.insertMany (
[
{
"equipo": { -- Se podría quitar para hacerlo más sencillo (como documento
embebido)
"nombre": "Napoles",
"resultados" : {"Pts": 15,
"PJ": 6,
"PG" : 5,
"PE" : 0,
"PP" : 1,
"GF" : 17,
"gc" : 6,
"Dif" : 11
}
}
},
{
"equipo": {
"nombre": "Liberpool",
"resultados" : {"Pts": 15,
"PJ": 6,
"PG" : 5,
"PE" : 0,
"PP" : 1,
"GF" : 17,
"gc" : 6,
"Dif" : 11
}
}
},
{
"equipo": {
"nombre": "Ajax",
"resultados" : {"Pts": 6,
"PJ": 6,
"PG" : 2,
"PE" : 0,
"PP" : 4,
"GF" : 11,
"gc" : 16,
"Dif" : -5
}
}
},
{
"equipo": {
"nombre": "Rangers",
"resultados" : {"Pts": 0,
"PJ": 6,
"PG" : 0,
"PE" : 0,
"PP" : 6,
"GF" : 2,
"gc" : 22,
"Dif" : -20
}
}
}
])
COMANDOS MONGODB
db.movies.insertOne(
{
title: "The Favourite",
genres: [ "Drama", "History" ],
runtime: 121,
rated: "R",
year: 2018,
directors: [ "Yorgos Lanthimos" ],
cast: [ "Olivia Colman", "Emma Stone", "Rachel Weisz" ],
type: "movie"
}
)
use sample_mflix
db.movies.insertMany([
{
title: "Jurassic World: Fallen Kingdom",
genres: [ "Action", "Sci-Fi" ],
runtime: 130,
rated: "PG-13",
year: 2018,
directors: [ "J. A. Bayona" ],
cast: [ "Chris Pratt", "Bryce Dallas Howard", "Rafe Spall" ],
type: "movie"
},
{
title: "Tag",
genres: [ "Comedy", "Action" ],
runtime: 105,
rated: "R",
year: 2018,
directors: [ "Jeff Tomsic" ],
cast: [ "Annabelle Wallis", "Jeremy Renner", "Jon Hamm" ],
type: "movie"
}
])
Delete Documents
Delete All Documents
db.movies.deleteMany({})
Update Documents
Update Operator Syntax
{
<update operator>: { <field1>: <value1>, ... },
<update operator>: { <field2>: <value2>, ... },
...
}
Update a Single Document
use sample_mflix
$set: {
})
use sample_airbnb
db.listingsAndReviews.updateMany(
{
$set: { security_deposit: 100, minimum_nights: 1 }
Replace a Document
To replace the entire content of a document except for the _id field, pass an
entirely new document as the second argument to db.collection.replaceOne() .
db.accounts.replaceOne(
{ account_id: 371138 },
{ account_id: 893421, limit: 5000, products: [ "Investment", "Brokerage" ] }
)
Query Documents
Use the db.collection.find() method in the MongoDB Shell to query documents
in a collection.
use sample_mflix
db.movies.find()
This operation is equivalent to the following SQL statement:
use sample_mflix
db.movies.find( { "title": "Titanic" } )
EXAMPLE
To return all movies from the sample_mflix.movies collection which are either
rated PG or PG-13 :
use sample_mflix
Use the $or operator to specify a compound query that joins each clause with a
logical OR conjunction so that the query selects the documents in the collection that match
at least one condition.
use sample_mflix
db.movies.find( {
year: 2010,
$or: [ { "awards.wins": { $gte: 5 } }, { genres: "Drama" } ]
})
Marzo 02 / 2023.