[firebase-br] Excluir registros excedentes

Eduardo Jedliczka - TeamFB jedyfb em gmail.com
Qua Jun 4 22:59:31 -03 2008


o primeiro passo é saber qual é o último excedente de cada matrícula
depois deve-se fazer um select do tipo Select * from tabelha where chave
<> chave_ult_excedente_matricula.

uma vez que isto, pode-se fazer:

delete from tabela x where not exists (select first 1 y.chave from
tabela y where x.chave <> y.chave_ult_execendente)

PS: quando pedir este tipo de ajuda coloque a estrutura da tabela, e a
referência entre PKs, FKs, e índices...

Sucesso

Eduardo

Em Qua, 2008-06-04 às 22:29 -0300, Juvencio Leite escreveu:
> Salve Galera, a noite e boa e tranquila! Estou com dificuldades com um
> delete especifico. Tenho uma tabela de logs, que salva toda alteração/
> inserção importante no sistema so que esta com + de 300 mil registros e
> preciso deletar os excedentes deixando somente o ultimo de cada matricula ,
> de acordo com os parametros abaixo, tentei usar da forma abaixo mas não
> funcionou:
> Delete OCORRENCIAS_log
> WHERE  OCO_OCORRENCIA =
> (select top 18 OCO_OCORRENCIA from OCORRENCIAS_log
> WHERE OCO_ESTABELECIMENTO = '001'
> AND OCO_MATRICULA = '00000738'
> AND OCO_CODIGO = '7'
> group by OCO_OCORRENCIA having count(*)>1)
> 
> alguem tem uma dica ou soluçao em sql, pram este problema?
> 
> -- 
> ====================================
> Desenvolvimento para aplicativos comerciais
> com eficiência e segurança.
> 'A Análise determina a necessidade.
> Se nunca andou de Helicoptero,
> isso não significa que
> o mesmo não sirva para nada.'
 <خوفنسيو يته دا سيلفا
> 
> ===================================
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista