Ordenar pelo mês/ano
Tenho o seguinte código que esta anexo onde não consigo ordenar os dados por mês/ano. Este é um banco Firebird. Alguém poderia me ajudar?
select
EXTRACT(month FROM data)||'/'||EXTRACT(YEAR FROM data) AS mes,
marca,
cod_cliente,
sum (vl_produto) as valor
from
(
select
pro.marca,
s.data,
cli.cod_cliente,
sum ((pe.total_liquido + pe.v_ipi + pe.v_icmss) - pe.desc_suframa) as vl_produto
from produtos_eventos pe
inner join saidas s on s.saida = pe.cod_operacao
inner join cfop cf on cf.cfop = pe.cfop
inner join clientes cli on s.cliente = cli.cliente
inner join produtos pro on pro.produto = pe.produto
where s.data BETWEEN '05/01/15' AND '06/02/16'
and pe.quantidade <> 0
and cf.nat_operacao in('5.101','6.101','5.102','5.403','6.102','6.107','6.108','6.403','5.551','6.551','5.933','6.933','7.551','6.108','6.109','6.110','7.101','7.102')
and cli.cod_cliente = 00000119
group by 1,2,3
union all
select
pro.marca,
en.data,
cli.cod_cliente,
sum ((pe.total_liquido + pe.v_ipi + pe.v_icmss) - pe.desc_suframa)* -1 as vl_produto
from produtos_eventos pe
inner join entradas en on en.entrada = pe.cod_operacao and pe.tipo_operacao = en.tipo_operacao_e and en.cancelada = 'F'
inner join cfop cf on cf.cfop = pe.cfop
inner join clientes cli on en.cliente = cli.cliente
inner join produtos pro on pro.produto = pe.produto
where en.data BETWEEN '05/01/15' AND '06/02/16'
and cf.nat_operacao in('1.201','2.201','1.202','2.202','2.203','3.201','3.202','1.411','2.411')
and cli.cod_cliente = 00000119
group by 1,2,3
union all
select
pro.marca,
en.data,
cli.cod_cliente,
sum ((pe.total_liquido + pe.v_ipi + v_icmss) - pe.desc_suframa)* -1 as vl_produto
from produtos_eventos pe
inner join entradas en on en.entrada = pe.cod_operacao and pe.tipo_operacao = en.tipo_operacao_e and en.cancelada = 'F'
inner join cfop cf on cf.cfop = pe.cfop
inner join clientes cli on en.cliente = cli.cliente
inner join produtos pro on pro.produto = pe.produto
where en.data BETWEEN '05/01/15' AND '06/02/16'
and cf.cfop in('107','125','153','155')
and cli.cod_cliente = 00000119
group by 1,2,3
) virtual
group by 1,2,3
order by 1Discussão (7)
Carregando comentários...