Tô trabalhando com uma tabela proveniente do IBGE, referente a uma amostra de pessoas do censo de 2000 e que tá organizada assim (entre outras colunas):
|| Control || RendaTotal || RendaFamiliar ||
|| 01 || 12 || ||
|| 01 || 2 || ||
|| 01 || 0 || ||
|| 02 || 5 || ||
|| 02 || 0 || ||
Onde a coluna “Control”, quando tem identificadores idênticos, quer dizer que as pessoas pertencem ao mesmo domicílio (possivelmente à mesma família, com algumas condições a mais).
A coluna “RendaTotal” é a renda mensal média, em salários mínimos.
A coluna “RendaFamiliar” é a que eu quero preencher, pra fazer uma análise de associação com outros atributos (estudo, nro de filhos, religião, etc).
O que eu preciso fazer, então, é selecionar todos os registros com Control igual, somar a RendaTotal deles, e colocar o resultado na coluna RendaFamiliar de cada um - no exemplo, todos os registros com Control “01” teriam RendaFamiliar = 14 e todos os registros com Control “02” teriam RendaFamiliar = 5.
Infelizmente, meus conhecimentos de SQL são realmente fracos… alguém pode ajudar?
OBS: A tabela está em Access 
Eu diria que voce tem algumas opcoes
Primeiro, existe algum motivo para ter esta coluna “RendaFamiliar” na mesma tabela? Ter o resultado de uma soma (valor dinamico) como conteudo do banco de dados nem sempre eh uma boa opcao, e soh deve ser usado caso vc precise mesmo disso, geralmente por conta de performance. Caso vc ja tenha decidido ter este valor no banco de dados, pq nao te-lo em outra tabela? Assim, voce nao “duplica” o mesmo valor varias vezes (control = 01 teria o mesmo valor em RendaFamiliar para todos os 3 registros).
Se voce criar uma outra tabela, contendo apenas Control e RendaFamiliar (nome da tabela: RendaFamiliarTotal, neste exemplo), voce pode colocar o conteudo nesta tabela mais ou menos assim:
Mas caso queira manter o jeito que esta fazendo, eu acho que voce deve fazer um “script” para atualizar este campo. E para isso, voce de novo tem algumas alternativas (por exemplo, usando uma “stored procedure”, ou o equivalente, no Access), via Java (veja a documentacao sobre “batching” no Hibernate) ou outro jeito. Mas de qualquer forma, voce precisa fazer isso em duas etapas: 1) buscar os dados de forma agrupada, 2) atualizar os dados com a somatoria.
As queries seriam algo assim:
Entao, para cada registro que eh retornado, voce precisa atualizar o registro (update TABELA set RendaFamilar = where Control = )
Espero ter ajudado 
Na realidade, os valores tem de ficar todos na mesma tabela pois ela será utilizada para Data Mining no Weka… então ela nunca será atualizada, os valores só serão lidos, e fica muito mais rápido se não for necessário um join de tabelas durante a consulta (:
Então acabei fazendo da forma que você sugeriu:
INSERT INTO Temp([Control],[Renda])
SELECT TabelaOrigem.Control,
SUM(TabelaOrigem.RendaTotal)
FROM TabelaOrigem
GROUP BY Control;
pra calcular os dados em outra tabela; e
UPDATE TabelaOrigem
INNER JOIN Temp
ON TabelaOrigem.Control = Temp.Control
SET TabelaOrigem.TotRendaFamilia = Temp.Renda;
pra mandar os dados calculados de volta.
Valeu!