Desafio: Tratamento de Erros
Deslize para mostrar o menu
Tarefa
Refatoração da consulta fornecida utilizando a tabela sales_data para garantir robustez, prevenção de erros e tratamento adequado de dados inconsistentes.
- Implementação de cálculos tolerantes a falhas para evitar erros em tempo de execução:
- Utilização de
SAFE_DIVIDEpara operações de divisão, prevenindo divisão por zero; - Utilização de
COALESCEna colunasales_pricepara substituir valoresNULLpor0; - Garantia de que a consulta retorne colunas calculadas de forma segura, sem falhas.
- Navegação segura em arrays para evitar erros de índice fora do limite:
- Utilização de
SAFE_OFFSETpara extrair elementos de arrays; - Garantia de que índices ausentes retornem
NULLao invés de causar falha na consulta.
- Garantia de integridade estrutural e adição de flags de validação:
- Tratamento de valores nulos em
LEFT JOINsubstituindo valores ausentes por"Unknown"; - Adição de uma nova coluna para sinalizar possíveis problemas de qualidade dos dados (por exemplo, dados ausentes, preço negativo, quantidade inválida);
- Garantia de que a consulta final mantenha visíveis os problemas de dados para depuração, ao invés de filtrá-los silenciosamente.
Nota
O tratamento robusto de erros se baseia em três pilares: Divisão Segura, Acesso Seguro a Arrays e Tratamento de Nulos. Uma consulta é tão forte quanto sua capacidade de lidar com dados inesperados.
Tudo estava claro?
Obrigado pelo seu feedback!
Seção 4. Capítulo 4
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Seção 4. Capítulo 4