Claro, aquí tienes varios ejemplos de consultas que puedes realizar sobre la base de datos biblioteca
y la colección libros
:
1. Obtener todos los libros
db.libros.find().pretty()
2. Obtener un libro específico por su título
db.libros.findOne({ titulo: "1984" })
3. Obtener todos los libros de un autor específico
db.libros.find({ autor: "Gabriel García Márquez" }).pretty()
4. Obtener todos los libros publicados antes de un año específico
db.libros.find({ fecha_publicacion: { $lt: new Date("1950-01-01") } }).pretty()
5. Obtener todos los libros de un género específico
db.libros.find({ genero: "Fantasía" }).pretty()
6. Contar el número de libros en la colección
db.libros.countDocuments()
7. Obtener todos los libros ordenados por fecha de publicación (ascendente)
db.libros.find().sort({ fecha_publicacion: 1 }).pretty()
8. Obtener todos los libros ordenados por fecha de publicación (descendente)
db.libros.find().sort({ fecha_publicacion: -1 }).pretty()
9. Obtener todos los libros de un autor específico y ordenarlos por fecha de publicación
db.libros.find({ autor: "Gabriel García Márquez" }).sort({ fecha_publicacion: 1 }).pretty()
10. Obtener libros con un rango específico de fechas de publicación
db.libros.find({
fecha_publicacion: {
$gte: new Date("1930-01-01"),
$lte: new Date("1950-12-31")
}
}).pretty()
11. Actualizar el género de un libro específico
db.libros.updateOne(
{ titulo: "El Gran Gatsby" },
{ $set: { genero: "Novela Trágica" } }
)
12. Actualizar el autor de varios libros
db.libros.updateMany(
{ autor: "Gabriel García Márquez" },
{ $set: { autor: "G. García Márquez" } }
)
13. Eliminar un libro por su título
db.libros.deleteOne({ titulo: "La Metamorfosis" })
14. Eliminar todos los libros de un autor específico
db.libros.deleteMany({ autor: "G. García Márquez" })
15. Obtener libros con títulos que contengan una palabra específica (búsqueda por patrón)
db.libros.find({ titulo: /Cien/ }).pretty()
16. Obtener todos los libros publicados en un año específico
db.libros.find({ fecha_publicacion: { $gte: new Date("1967-01-01"), $lt: new Date("1968-01-01") } }).pretty()
17. Obtener todos los libros de una editorial específica
db.libros.find({ editorial: "Viking Press" }).pretty()
18. Agrupar libros por género y contar cuántos hay en cada grupo
db.libros.aggregate([
{ $group: { _id: "$genero", total: { $sum: 1 } } }
])
19. Encontrar libros cuyo título comienza con una letra específica
db.libros.find({ titulo: /^E/ }).pretty()
20. Obtener libros que no pertenezcan a un género específico
db.libros.find({ genero: { $ne: "Fantasía" } }).pretty()
Estas consultas te permiten explorar y manipular la colección libros
de diversas maneras, proporcionando una base sólida para trabajar con tus datos en MongoDB.