4
respostas

Dúvida: Aula 04 - Exercício 04

Olá!

Porque que o comando:

SELECT FORMA_PAGTO AS 'FORMA DE PAGAMENTO', SUM(VALOR) AS 'SOMA DOS VALORES' FROM compras WHERE DATA < '2010-10-10';

Só me retorna uma soma geral com o valor "BOLETO" na coluna FORMA_PAGTO?

Quais parâmetros o MySQL utiliza para exibir o "BOLETO", e não o "DINHEIRO" ou "CARTAO"?

4 respostas

Glenderson,

Na sua consulta falta o parâmetro para o agrupamento da forma de pagamento:

SELECT FORMA_PAGTO AS 'FORMA DE PAGAMENTO', SUM(VALOR) AS 'SOMA DOS VALORES' FROM compras WHERE DATA < '2010-10-10' GROUP BY FORMA_PAGTO;

Harley,

Estou ciente de que realmente falta o GROUP BY.

Mas a pergunta é...porque que o "BOLETO" vem no resultado, e não o "DINHEIRO" ou "CARTAO"?

Imaginei que seria porque a soma do valor de "BOLETO" seria maior do que a de "DINHEIRO" e "CARTAO" mas me equivoquei, pois não é.

Glenderson,

Isso provavelmente é porque não existe "DINHEIRO" ou "CARTÃO" como forma de pagamento com data inferior a '2010-10-10'

Glenderson,

Como o Leandro mencionou, talvez a sua tabela não tenha as formas de pagamento 'DINHEIRO' ou 'CARTAO' com data inferior a que o excercicio pediu. Faça uns UPDATE na sua tabela alterando a forma de pagamento e tente refazer a consulta.