-
-
Save wsaribeiro/ad61e61dfa1bcbfc8244072dfb7aafcb to your computer and use it in GitHub Desktop.
Exemplos - MongoDB
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Busca todos os alunos | |
db.alunos.find() | |
// Busca todos os alunos com o mesmo nome | |
db.alunos.find( | |
{nome: "João Antônio} | |
) | |
// Busca todos os alunos que possuem uma determinada habilidade | |
db.alunos.find( | |
{"habilidades.nome": "Inglês"} | |
) | |
// Busca usando o operador OR | |
db.alunos.find( | |
$or : [ | |
{"curso.nome" : "Engenharia de Software}, | |
{"curso.nome" : "Física"} | |
] | |
) | |
// Busca usando o operador OR e AND | |
db.alunos.find( | |
$or : [ | |
{"curso.nome" : "Engenharia de Software}, | |
{"curso.nome" : "Física"} | |
], | |
{"habilidades.nome" : "Italiano"} | |
) | |
// Busca usando o operador IN e AND | |
db.alunos.find( | |
{ | |
"curso.nome" : { | |
$in [ | |
"Engenharia de Software", | |
"Física" | |
] | |
}, | |
{"habilidades.nome" : "Italiano"} | |
} | |
) | |
// Busca alunos com notas 5 | |
db.alunos.find({ | |
notas : 5 | |
}) | |
// Busca alunos com notas maiores que 5 | |
db.alunos.find({ | |
notas: { $gt : 5 } | |
}) | |
// Busca um aluno com notas maiores que 5 | |
db.alunos.findOne({ | |
notas: { $gt : 5 } | |
}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Insere um aluno | |
db.alunos.insert( | |
{ | |
nome : "João Antônio", | |
data_nascimento : new Date(1991, 09, 11), | |
curso : { | |
nome : "Engenharia de Software" | |
}, | |
notas : [9.2, 8.6, 8.2], | |
habilidades : [ | |
{ | |
nome : "Inglês", | |
nivel : "Avançado" | |
}, | |
{ | |
nome : "Italiano", | |
nivel : "Básico" | |
} | |
] | |
} | |
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// BUSCA POR PROXIMIDADE | |
// Insere a localização no cadastro do aluno | |
db.alunos.update( | |
{"_id" : ObjectId("5da78973835b2f1c75347a83")}, | |
{ | |
$set : { | |
localizacao : { | |
endereco : "Rua Vergueiro, 3185", | |
cidade : "São Paulo", | |
pais : "Brasil", | |
coordinates : [-23.5881852, -46.6323824], | |
type: "Point" | |
} | |
} | |
} | |
) | |
// Cria um index para o campo localizacao | |
db.alunos.createIndex({ | |
localizacao : "2dsphere" | |
}) | |
// Busca os pontos mais próximos da coordenada | |
db.alunos.aggregate([ | |
{ | |
$geoNear : { | |
near : { | |
coordinates: [-23.5881852, -46.6323824], | |
type: "Point" | |
}, | |
spherical : true, | |
distanceField : "distancia.calculada" | |
} | |
} | |
]) | |
// Busca os 3 pontos mais próximos da coordenada | |
db.alunos.aggregate([ | |
{ | |
$geoNear : { | |
near : { | |
coordinates: [-23.5881852, -46.6323824], | |
type: "Point" | |
}, | |
spherical : true, | |
distanceField : "distancia.calculada", | |
num : 4 | |
} | |
}, | |
{ $skip : 1 } | |
]) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Remove aluno pelo ID | |
db.alunos.remove( | |
{"_id" : ObjectId("5da78973835b2f1c75347a83")} | |
) | |
// Remove todos os alunos que possuem habilidade | |
db.alunos.remove( | |
{"habilidades.nome" : "Italiano"} | |
) | |
// Remove todos os alunos que possuem nota | |
db.alunos.remove( | |
{"notas" : 8.2} | |
) | |
// Remove todos os alunos que possuem nota menor que 6 | |
db.alunos.remove( | |
{ | |
"notas" : { $lt: 6} | |
} | |
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Ordena os alunos em ordem crescente pelo nome | |
db.alunos.find().sort({ | |
"nome" : 1 | |
}) | |
// Ordena os alunos em ordem decrescente pelo nome | |
db.alunos.find().sort({ | |
"nome" : -1 | |
}) | |
// Ordena os alunos em ordem crescente e exibe 3 | |
db.alunos.find().sort({ | |
"nome" : 1 | |
}).limit(3) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Substitui o nome do aluno | |
db.alunos.update( | |
{"_id": ObjectId("1234565435")}, | |
{"nome": "Daniela"} | |
) | |
// Atualiza o nome de todos os cursos | |
db.alunos.update( | |
{"curso.nome" : "Sistema de Informação}, | |
$set : { | |
"curso.nome" : "Sistemas de Informação" | |
}, | |
{ | |
multi : true | |
} | |
) | |
// Atualiza as notas do aluno | |
db.alunos.update( | |
{"_id" : ObjectId("5da78973835b2f1c75347a83")}, | |
$set : { | |
"notas": [8.9, 5, 10] | |
} | |
) | |
// Inclui uma nota para o aluno | |
db.alunos.update( | |
{"nome" : "Felipe", | |
{ | |
$push: { | |
"notas" : 7 | |
} | |
} | |
) | |
// Inclui várias notas para o aluno | |
db.alunos.update( | |
{"nome" : "Guilherme", | |
{ | |
$push : { | |
"notas" : { | |
$each [6.7,9.3] | |
} | |
} | |
} | |
) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment