- Inserção de documentos
- Atualização de documentos
- Exclusão de documentos
- Consulta com projeção
- Consulta utilizando combinação entre os seletores
- Consulta paginada e ordenada (utilizar skip, limit e sort)
{
"nome": string,
"Autor": string,
"Categoria":string,
"Número de páginas": number,
"Gostou": boolean,
"Lido": boolean
}
2- em um novo Pronpt de Comando
usei o comando use diarioDeLivros
para criar o novo banco de dados e o db.createCollection
para criar a coleção lista
.
3- agora já no Robo3T eu criei uma collection
dentro de lista
chamada livros
para armazenar os livros que estão listados no arquivo livros.json
.
db.getCollection('livros').update(
{
"Nome": "1984"
},
{$set:
{
"Número de paginas": '308'
}
}
)
db.getCollection('livros').update(
{
"Nome": "Admirável Mundo Novo "
},
{$set:
{
"Número de paginas": '312'
}
}
)
db.getCollection('livros').update(
{
"Nome": "Frankenstein"
},
{$set:
{
"Número de paginas": '136'
}
}
)
db.getCollection('livros').update(
{
"Nome": "Jogador Número 1"
},
{$set:
{
"Número de paginas": '462'
}
}
)
db.getCollection('livros').update(
{
"Nome": "Assim Falou Zaratustra"
},
{$set:
{
"Número de paginas": '532'
}
}
)
db.getCollection('livros').update(
{
"Nome": "Uma história feita por mãos negras"
},
{$set:
{
"Número de paginas": '272'
}
}
)
Autor
db.getCollection('livros').remove(
{
"Autor": "Niccolò Machiavelli"
}
);
Categoria
db.getCollection('livros').remove(
{
"Categoria":"Ficção Politica"
}
);
db.getCollection('livros').find(
{},
{
"Categoria" : 1, "_id" : 0
}
)
db.getCollection('livros').find(
{
"Categoria":"Ficção Filosófica",
"Autor": "Friedrich Nietzsche"
}
).pretty()
db.getCollection('livros').find(
{
"Categoria": "Ficção Científica",
"Autor": "Douglas Adams",
"Número de paginas": 208
}
).pretty()
db.getCollection('livros').find(
{
"Nome": /.*mochileiro.*/,
"Autor": "Douglas Adams",
//"Número de paginas": 208
}
).pretty()
Você pode tirar o comentário para observar um filtro melhor
- skip
db.getCollection('livros').find(
{
"Número de paginas": 208
}
).skip(2)
- limit
db.getCollection('livros').find(
{
"Número de paginas": 208
}
).limit(1)
- sort
- decrescente
db.getCollection('livros').find(
{
"Autor": "Douglas Adams"
}
).sort(
{
"Número de paginas": -1
}
)
- sort
- crescente
db.getCollection('livros').find(
{
"Autor": "Douglas Adams"
}
).sort(
{
"Número de paginas": 1
}
)
- Também combinei os argumentos
db.getCollection('livros').find(
{
"Número de paginas": 208
},
{
skip: 3,
limit: 5
}
)
db.getCollection('livros').find(
{
"Número de paginas" : {
"$gte" : 112 ,
"$lte" : 224
}
}
)