Quarto projeto do módulo de Back-end do curso de desenvolvimento web da Trybe
Contexto
Neste projeto, o primeiro sobre MongoDB, aplicamos nossos conhecimentos sobre métodos básicos de leitura, escrita e deleção, como find()
, insertOne()
, insertMany()
, deleteOne()
, deleteMany()
. Além disso, vimos operadores lógicos e de comparação utilizados para filtrar documentos.
Objetivo do projeto
Revisar todos os conceitos aprendidos até o momento, construindo um banco de dados chamado Dataflights e elaborar queries em mongo
para:
- Consultar a coleção do projeto, usando vários campos para filtrar essa busca,
- Deletar alguns voos conforme outros filtros.
- Contar voos compreendidos nos filtros.
Principais habilidades desenvolvidas nesse trabalho
- Buscar documentos no banco
- Usar filtros na busca
- Deletar documentos conforme filtro
- Contar documentos compreendidos nos filtros pedidos
- Inserir documentos no banco
Tecnologia utilizada
6 - Retorne apenas os campos empresa.sigla
, empresa.nome
e passageiros
do voo com o campo vooId
igual a 756807
.
10 - Retorne apenas os 10 primeiros documentos com voos da empresa GOL
do ano de 2017
. Exiba apenas os campos vooId
, empresa.nome
, aeroportoOrigem.nome
, aeroportoDestino.nome
, mes
e ano
.
11 - Retorne a quantidade de documentos em que o campo aeroportoDestino.pais
não seja igual a ESTADOS UNIDOS
.
12 - Retorne a quantidade de documentos em que o campo aeroportoDestino.pais
seja igual a BRASIL
, ARGENTINA
ou CHILE
.
13 - Retorne a quantidade de documentos em que o campo aeroportoDestino.continente
não seja igual a EUROPA
, ÁSIA
e OCEANIA
.
22 - Retorne o vooId
do primeiro voo em que a empresa seja DELTA AIRLINES
ou AMERICAN AIRLINES
, a sigla do aeroporto de origem seja SBGR
e a sigla do aeroporto de destino seja KJFK
.
23 - Retorne o vooId
e litrosCombustivel
do primeiro voo em que o campo litrosCombustivel
não seja maior do que 1000
e o campo litrosCombustivel
exista.
24 - Retorne o vooId
, empresa.nome
e litrosCombustivel
do primeiro voo em que litrosCombustivel
não seja maior do que 600
e a empresa não seja GOL
ou AZUL
, e o campo litrosCombustivel
exista.
25 - Remova todos os voos da empresa AZUL
em que a quantidade de combustível seja menor do que 400
. Informe a quantidade de documentos removidos.
26 - Remova todos os voos da empresa GOL
em que a quantidade de passageiros pagos esteja entre 5
e 10
, incluindo os casos em que a quantidade é 5
e 10
. Informe a quantidade de documentos removidos.
27 - Retorne a quantidade total de voos de natureza Doméstica
que a empresa PASSAREDO
possui, via uso de uma nova coleção chamada resumoVoos
.
Ou seja, a coleção resumoVoos
conterá documentos onde cada um indica para cada empresa a quantidade total de voos que ela possui de natureza Doméstica
.
Para isso, escreva no arquivo desafio27.js
duas queries, nesta ordem:
-
Conte quantos voos da empresa
PASSAREDO
cujo camponatureza
possua valor igual aDoméstica
e crie uma query que insira na coleçãoresumoVoos
um documento com os campos:empresa
(nome da empresa) etotalVoosDomesticos
(o total retornado anteriormente). -
Em uma segunda query, retorne a
empresa
e ototalVoosDomesticos
do primeiro documento presente na coleçãoresumoVoos
em que a empresa sejaPASSAREDO
.
28 - Retorne a quantidade total de voos de natureza Doméstica
que a empresa LATAM AIRLINES BRASIL
possui, via uso de uma nova coleção chamada resumoVoos
.
Para isso, escreva no arquivo desafio28.js
duas queries, nesta ordem:
-
Conte quantos voos da empresa
LATAM AIRLINES BRASIL
cujo camponatureza
possua valor igual aDoméstica
e crie uma query que insira na coleçãoresumoVoos
um documento com os campos:empresa
(nome da empresa) etotalVoosDomesticos
(o total retornado anteriormente). -
Em uma segunda query, retorne a
empresa
e ototalVoosDomesticos
do primeiro documento presente na coleçãoresumoVoos
em que a empresa sejaLATAM AIRLINES BRASIL
.