Pesquisa SQL de MESES com GROUP BY e ORDER BY juntos
tenho a seguinte query para me mostrar a seguinte tabela
Mês / Ano | Faturamento
Dezembro/2015 | R$ 2.000,00
Fevereiro/2015 | R$ 5.000,00
Março/2015 | R$ 3.000,00
mas os meses não estao saindo ordenados conforme a ordem JAN, FEV, MAR, ABR, MAI
justamente por causa que a função MONTH traz numeros de 1 a 12 e a falta do "0" faz a ordenação sair errado, queria 01, 02 etc
uso BANCO DE DADOS ACCESS
alguma sugestão???
obrigado
Mês / Ano | Faturamento
Dezembro/2015 | R$ 2.000,00
Fevereiro/2015 | R$ 5.000,00
Março/2015 | R$ 3.000,00
with dados.qryFaturamentoMes do
begin
close;
sql.Clear;
sql.Add('SELECT MONTH(DATA) & "/" & YEAR(DATA) as MesAno, SUM(VALOR_CASA) as TotalVendido FROM historico ');
sql.Add('where (DATA between :DATAINICIAL and :DATAFINAL)');
sql.Add(' and (TIPO = "V") ');
sql.Add(' group by MONTH(DATA) & "/" & YEAR(DATA) order by MONTH(DATA) & "/" & YEAR(DATA) ');
Parameters.ParamByName('DATAINICIAL').Value := dataini;
Parameters.ParamByName('DATAFINAL').Value := datafin;
Open;
end;
mas os meses não estao saindo ordenados conforme a ordem JAN, FEV, MAR, ABR, MAI
justamente por causa que a função MONTH traz numeros de 1 a 12 e a falta do "0" faz a ordenação sair errado, queria 01, 02 etc
uso BANCO DE DADOS ACCESS
alguma sugestão???
obrigado
Armando Luiz
Curtidas 0
Respostas
Cauê Nishijima
06/10/2015
O group by e o order by não deveriam estar da segunte forma:
sql.Add(' group by YEAR(DATA), MONTH(DATA) order by YEAR(DATA), MONTH(DATA)');
GOSTEI 0
Armando Luiz
06/10/2015
o order by so funciono da forma que digitei...
mas postando a solução que consegui... foi separar o Mes e o Ano, pois da forma que fiz estava unindo o mes com o ano assim: 1/2015, e a "/" barra esta impedindo a ordenação de forma correta, entao separei em 2 campos o Mes e o Ano, depois fiz a ordenação da mesma forma postada acima e funcionou
mas postando a solução que consegui... foi separar o Mes e o Ano, pois da forma que fiz estava unindo o mes com o ano assim: 1/2015, e a "/" barra esta impedindo a ordenação de forma correta, entao separei em 2 campos o Mes e o Ano, depois fiz a ordenação da mesma forma postada acima e funcionou
GOSTEI 0