Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2010
    Messaggi
    165

    [sql server 2005] Eliminare record doppi e sommare valori in una colonna

    Ciao a tutti,

    avrei un serio problema.
    e vi ringrazio anticipatamente.

    Come da titolo il mio problema è: eliminare i record doppi all'interno di una tabella e sommare i valori all'interno di un campo numerico.

    esempio:

    record 1:
    cod art: pippo - qta = -4

    record 2:
    cod art: pippo - qta = 10

    ho diciamo "risolto in parte" facendo questa select:

    codice:
    select SUM(qta_esistenza)as pippo from MG_INVENT_RIG WHERE cod_art = 'A' and prg_invent = '3'
    Come posso fare la stessa cosa però eliminando e non con una select?????

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Inserirei prima il record con la somma nella stessa tabella

    codice:
    insert into MG_INVENT_RIG (cod_art,qta_esistenza,prg_invent)
    select cod_art,SUM(qta_esistenza),prg_invent 
    from MG_INVENT_RIG where cod_art = 'A' and prg_invent = 3
    group by cod_art,prg_invent
    e quindi cancellerei tutti i record specificati tramite i criteri di ricerca tranne quello con l'id maggiore che è quello appena inserito.

    codice:
    delete from MG_INVENT_RIG where cod_art = 'a' and prg_invent = 3 and id <> (
    select MAX(id) from MG_INVENT_RIG where cod_art = 'a' and prg_invent = 3)
    Prova prima su una copia della tabella.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2010
    Messaggi
    165
    grazie mille per la risposta..

    ora provo subito..

    Avrei un altro dubbio, invece di mettere la WHERE, che nel mio esempio si riferisce ad uno dei record duplicati, ma ce ne sono tanti altri uguali.
    Come faccio a dirgli: "fai le operazioni da te specificate dove i record sono duplicai??"

    grazie mille..

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Tanto vale allora che raggruppi sui campi che desideri, fai la somma e il risultato della query lo inserisci in una tabella nuova.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.