Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21

Discussione: raggruppare record

  1. #1

    raggruppare record

    Salve a tutti, sono in difficoltà, gentilmente qualcuno può aiutarmi?
    da un DB access ho
    campo1 = codice articolo
    campo2 = codice EAN
    campo3 = disponibilità
    campo4 = in arrivo
    Succede che un codice articolo può ripetersi anche 6 volte (colori diversi), ma può avere solo 2 codici EAN diversi (non chiedetemi perchè)
    dovrei quindi fare un loop sommando la disponibilità dei vari articoli SOLO se EAN è diverso, io ho provato col SELECT DISTINCT, così

    codice:
    sqlx = "SELECT DISTINCT(Campo2), Campo1, campo3 FROM fiori WHERE Campo1 = '"& campo1 &"'"        
            Set rsx = Server.CreateObject("ADODB.Recordset")
    campo1 nalle select è il codice articolo che passo via form
    così facendo non mi raggruppa i risultati della query, forse col "group by" ? potreste fare un esempio?
    Grazie

  2. #2
    fa' tu un esempio di cosa hai nel db, in quale forma, e come vorresti l'output

  3. #3
    Allora, come detto i campi del database sono:
    campo1 = codice articolo
    campo2 = codice EAN
    campo3 = disponibilità
    campo4 = in arrivo
    campo5 = colore

    Partendo da una variabile "disponibilita" devo, dopo aver fatto la sql, devo fare un ciclo, sommando a "disponibilita" il valore di "Campo3". La Sql deve raggruppare i codici EA uguali tra loro.
    questo perché per ogni prodotto (Campo1) potrebbero esserci 6 record, però con 2-3 codici EAN differenti.
    quindi se il primo EAN è (es.) 262 con quantità 4000
    quantità = 0 + 4000
    se il secondo ean è ancora 262 salto l'aggiunta
    se il terzo ean è 263 con quantità 3000
    quantità = 4000 + 3000
    e così via.
    quindi O controllo l'ean sul ciclo O raggruppo i record durante la select (group by o distinct) personalmente ho provato ma senza successo
    se qualcuno è più bravo di me, grazie

  4. #4
    puoi per piacere postare due tabelle con i dati in entrata e i dati in uscita?

  5. #5
    Campo1 Campo2 Campo3 Campo4 Campo5
    BF60089 800262 500 0 YELLOW
    BF60089 800262 500 0 PURPLE
    BF60089 800263 100 0 ORANGE
    BF60089 800263 100 0 PINK
    BF60089 800263 100 0 Lavander
    BF60089 800264 200 0 CREAM
    questa sopra è la tabella con tutti gli articoli
    deve risultare
    Art. BF60089, totale disponibilità: 800 pz.

  6. #6
    Select sum(campo3) from (select distinct campo1, campo2, campo3 from tabella) tabx

  7. #7
    ok domani provo
    grazie intanto

  8. #8
    scusa l'ignoranza: ma poi come mostrare il record somma?
    se imposto la varibile
    disponibilita = rs(campo3)
    mi da errore

  9. #9
    rs(0)

    oppure usi un alias

  10. #10
    Grazie. Visto che sei gentile oltre che preparato provo ad approffittarne: volendo fare un ciclo raggruppando il campo2 (codice ean) in modo da ottenere
    BF60089 800262
    BF60089 800263
    BF60089 800264
    come formulare la SQL?
    grazie ancora

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.