1
resposta

Exemplo no final do vídeo parece estar com as colunas trocadas

No vídeo da aula 06, atividade 02 ('Relatório de vendas válidas') o professor inverteu a lógica que ele estava querendo no começo do vídeo. A coluna 'volume_de_compra' é a coluna 'volume_limite' que ele deveria ter renomeado, e não a 'volume_vendido' que é a soma das vendas. E consequentemente, no case ele deveria inverter a lógica, de '<=' para '>='.

Como o vídeo não tem transcrição, também não tem como "Sugerir alteração", e por isso criei um post. Inclusive o arquivo que é disponibilizado no início da aula está como é mostrado no vídeo. E como o exercício seguinte se baseia nesse select, seria interessante que na transcrição do vídeo, ou nesse exercício seguinte (aula 06, atividade 03) tivesse alguma menção à essa inversão da lógica. (Pois inclusive na resposta desse exercício o professor faz um select completamente diferente que está com a lógica correta).

Select que acredito ser o correto:

SELECT CADASTRO.CPF, CADASTRO.NOME, VENDAS.MES_ANO, CADASTRO.VOLUME_DE_COMPRA AS VOLUME_LIMITE,
       VENDAS.VOLUME_VENDIDO,
       CASE WHEN CADASTRO.VOLUME_DE_COMPRA >= VENDAS.VOLUME_VENDIDO THEN 'Vendas Válidas'
       ELSE 'Vendas Inválidas' END AS RESULTADO
  FROM (SELECT NF.CPF, TO_CHAR(NF.DATA_VENDA, 'YYYY-MM') AS MES_ANO,
               SUM(INF.QUANTIDADE) AS VOLUME_VENDIDO
          FROM NOTAS_FISCAIS NF
         INNER JOIN ITENS_NOTAS_FISCAIS INF
            ON NF.NUMERO = INF.NUMERO
         GROUP BY NF.CPF, TO_CHAR(NF.DATA_VENDA, 'YYYY-MM')) VENDAS
 INNER JOIN (SELECT CPF, NOME, VOLUME_DE_COMPRA
               FROM TABELA_DE_CLIENTES) CADASTRO
    ON VENDAS.CPF = CADASTRO.CPF
 WHERE VENDAS.MES_ANO = '2018-01';
1 resposta

Olá Guilherme, tudo bem?

Peço desculpas pela demora no retorno, realmente a lógica do professor foi invertida no final do vídeo, mas já irei repassar ao pessoal responsável para verificar e realizar as correções necessárias. Agradecemos pelo feedback, continue assim e bons Estudos!