Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Qual a diferença de converter os números pra char (usar ou não o cast) nesse caso?

////O meu
SELECT CONCAT('O cliente:', ' ',nome, ' ', 'faturou', ' ', SUM((quantidade * preco)), ' ', 'no ano de', ' ', YEAR(data_venda)) AS RELATORIO
FROM tabela_de_clientes tc,
     notas_fiscais nf,
     itens_notas_fiscais inf
WHERE tc.cpf = nf.cpf
AND   nf.numero = inf.numero
AND   YEAR(data_venda) = '2016'
GROUP BY nome
ORDER BY nome;


///do professor
SELECT CONCAT('O cliente ', TC.NOME, ' faturou ', 
CAST(SUM(INF.QUANTIDADE * INF.preco) AS char (20))
 , ' no ano ', CAST(YEAR(NF.DATA_VENDA) AS char (20))) AS SENTENCA FROM notas_fiscais NF
INNER JOIN itens_notas_fiscais INF ON NF.NUMERO = INF.NUMERO
INNER JOIN tabela_de_clientes TC ON NF.CPF = TC.CPF
WHERE YEAR(DATA_VENDA) = 2016
GROUP BY TC.NOME, YEAR(DATA_VENDA)
ORDER BY nome;
1 resposta
solução!

Olá Natália, tudo bem? Nesse caso realmente não surtiu nenhum diferença, e como podemos verificar na própria documentação do MySQL, ele faz uma conversão implícita de números para texto e torna o texto, acho que nesse ponto o professor utilizou o CAST apenas por questões didáticas e para apresentar mais um recurso do MySQL.

Espero ter esclarecido sua dúvida!