DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

Fórum DevMedia


Autor
Mensagem
rafael conrado farias
 

País: Brasil
Estado: PR
Cidade: marechal candido rondon
Mensagens: 2
 Postado em: 5/1/2012 4:34:29 PM

No seguinte código

#Código
select
Janeiro as mes,
sum(cast (ne.total as numeric(10,2))) as Total_Vendas
from notas_emitidas ne
where
extract (month from ne.data_emissao)
= 1
and extract (year from ne.data_emissao)
= :Ano

union all

select
Fevereiro as mes,
sum(cast (ne.total as numeric(10,2))) as Total_Vendas
from notas_emitidas ne
where
extract (month from ne.data_emissao)
= 2
and extract (year from ne.data_emissao)
= :Ano
union all

select
Março as mes,
sum(cast (ne.total as numeric(10,2))) as Total_Vendas
from notas_emitidas ne
where
extract (month from ne.data_emissao)
= 3
and extract (year from ne.data_emissao)
= :Ano

group by 1, 2


ocorre o seguinte erro:


Citação:
Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Invalid command.
Data type unknown.


o que tem de errado no meu SQL, quando executo cada select individualmente ele rola na boa!
Obrigado
EDUARDO RICHELI
 

País: brasil
Estado: PA
Cidade: Bragança
Mensagens: 56
 Postado em: 10/1/2012 3:59:40 PM
amigo este seu sql esta um bocado redundante, você poderia fazer uma procedure, com for, vai ficar bem mais rapido a recuperação das suas informações

 
rafael conrado farias
 

País: Brasil
Estado: PR
Cidade: marechal candido rondon
Mensagens: 2
 Postado em: 10/1/2012 4:04:19 PM
eu consegui corrigir ele para funcionar, mas se puder me dar o exemplo do FOR, agradeceria muito para meus estudos.
=)

 
Emerson
 
 


País: Brasil
Estado: SP
Cidade: São Paulo
Mensagens: 921
 Postado em: 10/1/2012 9:29:01 PM
tente:

select
(month from data_emissao) as mes,
cast(coalesce(sum(total),0) as numeric(10,2)) as Total_Vendas
from notas_emitidas
where extract (year from data_emissao) = :Ano
group by 1


 
EDUARDO RICHELI
 

País: brasil
Estado: PA
Cidade: Bragança
Mensagens: 56
 Postado em: 11/1/2012 9:57:08 AM
amigo no inicio a codificação union ficou blz, mas medida que as tabelas almentavam de volume ficava + lento, entao criei as SP onde melhorou 95%

FOR SELECT xxxxx from tabela
INTO xxxxx DO
SUSPEND;

tem muitas documentaç~çoes na net sobre isto, basta pesquisar, abraços

 
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03