[firebase-br] Erro INSERT SELECT

Fernando Oliveira Pereira fernando.olpereira em gmail.com
Seg Set 24 15:22:20 -03 2007


Bom... pelo conhecimento q tenho de SQL o seu INSERT INTO está faltando os
parâmetros de entrada...
Exemplo: INSERT INTO tabela(campo1,campo2,campo3,...) VALUES
(entrada1,entrada2,entrada3,...)

E no SELECT pq vc não utiliza o INNER JOIN?

Ficaria:  INSERT INTO CaixaSaldoDiario(datasaldo, planocontas, filial,
saldodiario) VALUES (SELECT CaixaLancamentos.datalancto,
CaixaLancamentos.codigoplanocontas, CaixaLancamentos.filial, (
CaixaSaldoDiario.saldodiario + SUM(CaixaLancamentos.valor))
>From CaixaSaldoDiario INNER JOIN CaixaLancamentos ON
CaixaSaldoDiario.datasaldo = CaixaLancamentos.datalancto INNER JOIN
CaixaPlanoContas ON CaixaSaldoDiario.codigoplanocontas =
CaixaPlanoContas.codigo GROUP BY CaixaLancamentos.filial)

Tenta ae e depois nos fala!

Em 24/09/07, .:: Eder Sousa ::. <edersousa em gmail.com> escreveu:
>
> ERRO QUE ESTÁ RETORNANDO
> Invalid token.
> Dynamic SQL Error.
> SQL error code = -104.
> Invalid expression in the select list (not contained in either an
> aggregate
> function or the GROUP BY clause).
>
>
> COMANDO QUE ESTOU USANDO
>
> INSERT INTO CAIXASALDODIARIO(caixasaldodiario.datasaldo,
>                             caixasaldodiario.planocontas,
>                              caixasaldodiario.filial,
>                             caixasaldodiario.saldodiario)
>
>                             select l.datalancto,
>                                    l.codigoplanocontas,
>                                    l.filial,
>                                    (s.saldodiario + sum (l.valor))
> SaldoAtual
>                             from caixalancamentos l,  caixasaldodiario s,
> caixaplanocontas p
>                             where ( s.datasaldo = (l.datalancto-1) and
>                                   (l.codigoplanocontas = p.codigo) and
>                                   (l.filial = s.filial) and
>                                   l.codigoplanocontas = s.planocontas )
> and
>                                   (l.filial = 2) and (l.codigoplanocontas=
> 27);  /*Forçando somente uma filial e um código*/
>
>
> Antes que falem já usei o GROUP e também não tive sucesso...
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



-- 
Fernando Oliveira Pereira
Analista & Programador em Sistema de Informação
TiSystems S/S Ltda
Alfenas - MG



Mais detalhes sobre a lista de discussão lista