Beto Lima 0 Denunciar post Postado Agosto 25, 2010 Olá, alguém poderia me dar um help pra solucionar este comando? UPDATE tabela SET total_soma = select sum(coluna) as soma from tabela where id_valor1 = 2 and id_valor2 = 2; recebo esta mensagem de erro consulta SQL: Documentação UPDATE tabela SET total_soma = SELECT sum( coluna) AS soma FROM tabela WHERE id_valor1 =2 AND id_valor2 =2 Mensagens do MySQL : Documentação #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'select sum(coluna) as soma from tabela where id_valor1 = 2 and id_valor2 = 2' at line 2 minha tabela está assim CREATE TABLE IF NOT EXISTS `tabela` ( `id_tabela` int(11) NOT NULL auto_increment, `id_valor1` int(11) NOT NULL, `id_valor2` int(11) NOT NULL, `coluna` int(11) default NULL, `total_soma` int(11) default NULL, PRIMARY KEY (`id_tabela`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ; Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Agosto 25, 2010 antes de poder te ajudar eu preciso saber o q você quer fazer, senao posso te passar um comando q vai ferrar sua taba Compartilhar este post Link para o post Compartilhar em outros sites
Beto Lima 0 Denunciar post Postado Agosto 26, 2010 imagine a seguinte situação id_tabela | id_valor1 | id_valor2 | coluna | total_soma 1 | 2 | 2 | 10 | NULL 2 | 2 | 2 | 20 | NULL UPDATE tabela SET total_soma = SELECT sum( coluna) AS soma FROM tabela WHERE id_valor1 =2 AND id_valor2 =2 quero largar a soma da coluna (coluna) na coluna total_soma então deveria ficar assim após o comando caso tivesse sucesso: id_tabela | id_valor1 | id_valor2 | coluna | total_soma 1 | 2 | 2 | 10 | 30 2 | 2 | 2 | 20 | 30 a condição de id_valor1 e id_valor2 serem 2 é só pra testes, ali vou passar parametros vindos de um formulario. valeu Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Agosto 26, 2010 UPDATE tabela SET total_soma = (select sum(coluna) as soma from tabela where id_valor1 = 2 and id_valor2 = 2) where id_valor1 = 2 and id_valor2 = 2; mas pq você nao usa consultas com group by? Compartilhar este post Link para o post Compartilhar em outros sites
VascoDaGama 2 Denunciar post Postado Agosto 26, 2010 não acho legal gravar dados dessa forma fica redundante se for pra gravar o total, é melhor salvar em outra tabela específica. Compartilhar este post Link para o post Compartilhar em outros sites