ULTILIZAR FUNCAO SUM EM INSTRUCAO SQL
Bom dia! Tehno a Seguinte Instrucao:
UPDATE Movimento INNER JOIN Extrato ON Movimento.campo4=Extrato.Banco AND Movimento.Campo9 = Extrato.Periodo SET Extrato.SAL1= SUM(movimento.campo2) Where Day(Movimento.Campo1)='1' AND Movimento.campo3 = 'Credito' AND Extrato.Aberto=0
A intenção é atualiza o campo Sal1 da Tabela Extrato com a Soma do campo2 da tabela movimento seguito os parametros exigidos. Mas me retorna o seguite erro:
"Voce tentou execultar uma consulta que nao inclui a expressão 'SAL1'
especificada como parte de uma função agregada."
se eu removo a Funcao SUM ai funciona porem nao traz a soma.
Se alguem tiver alguma ideia de como fazer isso me da um toque!
UPDATE Movimento INNER JOIN Extrato ON Movimento.campo4=Extrato.Banco AND Movimento.Campo9 = Extrato.Periodo SET Extrato.SAL1= SUM(movimento.campo2) Where Day(Movimento.Campo1)='1' AND Movimento.campo3 = 'Credito' AND Extrato.Aberto=0
A intenção é atualiza o campo Sal1 da Tabela Extrato com a Soma do campo2 da tabela movimento seguito os parametros exigidos. Mas me retorna o seguite erro:
"Voce tentou execultar uma consulta que nao inclui a expressão 'SAL1'
especificada como parte de uma função agregada."
se eu removo a Funcao SUM ai funciona porem nao traz a soma.
Se alguem tiver alguma ideia de como fazer isso me da um toque!
Tenta isso:
UPDATE Movimento.Campo1, Movimento.Campo3 (complete a lista), SUM(Movimento.Campo2) as Total INNER JOIN Extrato ON Movimento.campo4=Extrato.Banco AND Movimento.Campo9 = Extrato.Periodo SET Extrato.SAL1= Movimento.Total Where Day(Movimento.Campo1)='1' AND Movimento.campo3 = 'Credito' AND Extrato.Aberto=0
eu mudei a estrutura..acho q pode funcionar..tenta ae e avisa
boa sorte
UPDATE movimento set Movimento.Campo1 = (select sum(valor) from tabela where condicao_select_interno)
where
condicao do update
where
condicao do update
[txt-color=#000000]SINKERTEC[/txt-color]
Aparentemente deu Certo!
Vou fazer mais alguns Teste para conferir o Reultado.
[txt-color=#3333ff]ACG1574[/txt-color]
Do geito que vc passou ficou assim:
UPDATE Movimento SET Movimento.Campo2=(SELECT SUM(Campo2) FROM Movimento Where Day(Movimento.Campo1)='1' AND Movimento.campo3 = 'Credito') INNER JOIN Extrato ON Movimento.campo4=Extrato.Banco AND Movimento.Campo9 = Extrato.Periodo SET Extrato.SAL1= Movimento.campo2 WHERE Extrato.Aberto=0
Porem Nao deu certo, a mensagem de erro foi: "Erro de Sintax, Operador Faltando na Expressão de Consulta.
Testei no Access e Para em INNER JOIN Extrato...
Valeu Galera!
Aparentemente deu Certo!
Vou fazer mais alguns Teste para conferir o Reultado.
[txt-color=#3333ff]ACG1574[/txt-color]
Do geito que vc passou ficou assim:
UPDATE Movimento SET Movimento.Campo2=(SELECT SUM(Campo2) FROM Movimento Where Day(Movimento.Campo1)='1' AND Movimento.campo3 = 'Credito') INNER JOIN Extrato ON Movimento.campo4=Extrato.Banco AND Movimento.Campo9 = Extrato.Periodo SET Extrato.SAL1= Movimento.campo2 WHERE Extrato.Aberto=0
Porem Nao deu certo, a mensagem de erro foi: "Erro de Sintax, Operador Faltando na Expressão de Consulta.
Testei no Access e Para em INNER JOIN Extrato...
Valeu Galera!
Opa LORD
testa ae..e avisa depois
abraços e boa sorte
Não Deu Certo SINKERTEC
Ta assim:
UPDATE Movimento.Campo1, Movimento.Campo3, Movimento.campo4, movimento.campo9, SUM(Movimento.Campo2) as Total INNER JOIN Extrato ON Movimento.campo4=Extrato.Banco AND Movimento.Campo9 = Extrato.Periodo SET Extrato.SAL1= Movimento.Total Where Day(Movimento.Campo1)='1' AND Movimento.campo3 = 'Credito' AND Extrato.Aberto=0
e o erro foi: "Erro de Sintaxe na Expressão UPDATE
Ta assim:
UPDATE Movimento.Campo1, Movimento.Campo3, Movimento.campo4, movimento.campo9, SUM(Movimento.Campo2) as Total INNER JOIN Extrato ON Movimento.campo4=Extrato.Banco AND Movimento.Campo9 = Extrato.Periodo SET Extrato.SAL1= Movimento.Total Where Day(Movimento.Campo1)='1' AND Movimento.campo3 = 'Credito' AND Extrato.Aberto=0
e o erro foi: "Erro de Sintaxe na Expressão UPDATE
Tambem tentei assim:
UPDATE Movimento INNER JOIN Extrato ON (Movimento.campo4 = Extrato.Banco) AND (Movimento.Campo9 = Extrato.Periodo) SET Extrato.SAL1= (SELECT Sum(Campo2) FROM Movimento WHERE Day(movimento.campo1)='1' AND Movimento.campo3='Credito') WHERE Extrato.Aberto=0
O erro foi: "A operação deve usar uma consulta atualizavel"
UPDATE Movimento INNER JOIN Extrato ON (Movimento.campo4 = Extrato.Banco) AND (Movimento.Campo9 = Extrato.Periodo) SET Extrato.SAL1= (SELECT Sum(Campo2) FROM Movimento WHERE Day(movimento.campo1)='1' AND Movimento.campo3='Credito') WHERE Extrato.Aberto=0
O erro foi: "A operação deve usar uma consulta atualizavel"
Tópico encerrado , respostas não são mais permitidas