# 🛸 Lista SQL — Arrays e JSONB ## 2) Inserts ```sql -- Missões INSERT INTO ufo.missoes (nome, tags, dias) VALUES ('Operação Nocturna', ARRAY['nocturno','rural'], ARRAY[1,3,5]), ('Varredura Urbana', ARRAY['urbano','leste'], ARRAY[2,4]), ('Monitoramento Litoral',ARRAY['litoral'], ARRAY[6,7]), ('Pico MG', ARRAY['montanha','nocturno'], ARRAY[5]), ('Rota Sul', ARRAY['rodovia','rural'], ARRAY[1,2,3,4,5]); -- Relatórios INSERT INTO ufo.relatorios (dados) VALUES ('{"sku":"R-42","tags":["laser","orb"],"confirmado":true,"pontos":7}'), ('{"sku":"R-77","tags":["triangular"],"confirmado":false,"pontos":3,"notas":{"origem":"CE"}}'), ('{"sku":"R-15","tags":["pulsante","orb"],"confirmado":true,"pontos":9}'), ('{"sku":"R-88","tags":["rastro"],"confirmado":false,"pontos":2}'), ('{"sku":"R-19","tags":["orb"],"confirmado":true,"pontos":5,"extra":{"angulo":45}}'); ``` --- ## 3) Exercícios — Arrays (LISTAS) 1. Liste todas as missões que contenham a tag `'nocturno'`. 2. Liste todas as missões que ocorrem no **dia 5**. 3. Adicione a tag `'urgente'` à missão `'Operação Nocturna'`. 4. Remova a tag `'leste'` da missão `'Varredura Urbana'`. 5. Mostre a quantidade de dias cadastrados em cada missão. 6. Liste todas as missões que possuem mais de **3 dias** na lista. 7. Atualize a missão `'Rota Sul'` para incluir o dia `6`. 8. Selecione apenas o **primeiro elemento** da lista de tags de cada missão. --- ## 4) Exercícios — JSONB 9. Liste todos os relatórios que possuam a tag `'orb'`. 10. Extraia somente o campo `sku` de cada relatório. 11. Liste relatórios onde `confirmado = true`. 12. Atualize o valor de `pontos` para `10` no relatório com `sku = 'R-42'`. 13. Adicione uma nova tag `'nocturno'` ao relatório `sku = 'R-19'`. 14. Remova a tag `'rastro'` de qualquer relatório que a possua. 15. Liste apenas os relatórios que possuam o campo extra `notas`. 16. Liste os relatórios ordenados pelo campo `pontos` (do JSON).