Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Prezados,
Estou tentando fazer uma consulta que soma os valores de um campo em determinado mês/ano mas não estou conseguindo fazer funcionar. Alguém tem uma ideia do que pode ser?
"SELECT sum(caepf) AS scaepf
FROM atend
WHERE
date_format(data, '%Y-%m') <= date_format('$d', '%Y-%m')
AND date_format(data, '%Y-%m') >= date_format('$d', '%Y-%m')
AND pav = '$nome_pav'
AND dr = '$dr' ";
Obrigado Matheus,
Acabei fazendo de outra forma e consegui...
No lugar de usar o date_format() usei YEAR() e MONTH()
Quanto aos nomes, agradeço também. Usei esses porque são nomes usuais onde trabalho. Por exemplo, pav é abreviatura de "ponto de atendimento virtual"
De qualquer forma, agradeço muito suas considerações e o tempo que você dedicou!!!
Show, /profile/27632-marcos-vin%C3%ADcius/?do=hovercard" data-mentionid="27632" href="/profile/27632-marcos-vin%C3%ADcius/" rel="">@Marcos Vinícius. Fico feliz que tenha solucionado a questão. :)
Olá /profile/27632-marcos-vin%C3%ADcius/?do=hovercard" data-mentionid="27632" href="/profile/27632-marcos-vin%C3%ADcius/" rel="">@Marcos Vinícius, tudo tranquilo?
O que você quer dizer com "não estou conseguindo fazer funcionar"? Aparece algum erro ou simplesmente não retorna registros?
Vou te dar algumas sugestões:
1 - Tenho quase certeza que o problema é pelo fato de que "data" é uma palavra reservada no Mysql, e sua consulta deve estar sendo mal interpretada pelo banco.
Veja: https://dev.mysql.com/doc/refman/8.0/en/keywords.html#keywords-8-0-detailed-D
Como resolver: uso correto das aspas para nomes de colunas e tabelas (no caso, crase).
"SELECT sum(
caepf) ASscaepfFROM
atendWHERE
date_format(
data, '%Y-%m') <= date_format('$d', '%Y-%m')AND date_format(
data, '%Y-%m') >= date_format('$d', '%Y-%m')AND
pav= '$nome_pav'