Funzioni di aggregazione in una query

di il
7 risposte

Funzioni di aggregazione in una query

Buonasera a tutti, da premettere che ho postato ieri su un altro sito senza risultati
avrei il seguente problema spero mi possiate aiutare:
Ho una tabella con i seguenti campi:
nome prodotto;data acquisto;prezzo;iva;prezzo ivato (è una tabella con duplicati)
Tramite una query di raggruppamento avrei bisogno di visualizzare l'ultima data
di acquisto per ogni prodotto e che mi restituisse l'iva di quel giorno, il prezzo di quel giorno ecc ecc
Raggruppando i campi nome prodotto e con la funzione Max per la data di acquisto tutto va bene
Ma se aggiungo i campi prezzo, iva e prezzo ivato la query mi da dati non veritieri
La mia domanda è: quale funzione di aggregazione devo usare per quest'ultimi campi da restituirmi il
prezzo, l'iva ed il prezzo ivato del prodotto in quella data di acquisto?
Spero di essere stato chiaro
Grazie in anticipo

7 Risposte

  • Re: Funzioni di aggregazione in una query

    Scommetto che ottieni più record di quelli che ti aspetti. Si tratta di prendere una sola volta i valori di Prezzo, IVA, PrezzoIvato. Prova a impostare le funzioni di aggregazione così:
    NomeProdotto: Raggruppamento
    Data: Max
    Prezzo: Primo o Ultimo
    IVA: Primo o Ultimo
    PrezzoIvato: Primo o Ultimo

    Non saprei dirti perfettamente il perchè, ma semplicemente ho fatto molte prove e questa soluzione sembra dare il risultato atteso.
  • Re: Funzioni di aggregazione in una query

    Si avevo già provato in questo modo e funziona ma se carico i prodotti non i ordine di tata di acquisto poi mi sballa i valori del prezzo e del prezzo ivato, cioè mi tira fuori l'ultima data ma non i prezzi di quel giorno. Vorrei sapere se c'è un altro procedimento in modo che mi tira fuori l'ultima data e tutti i campi relativi a quel record a prescindere da come vengano caricati nella tabella
  • Re: Funzioni di aggregazione in una query

    Io avrei una soluzione un po' oscena (nel senso che sembra molto strana anche a me), ma pare che funziona davvero.
    1. Crea una query importando TuaTabella
    2. Trascina nella griglia i soli campi NomeProdotto e Data
    3. Imposta le seguenti funzioni di aggregazione ai campi.
    NomeProdotto: Raggruppamento
    Data: Max
    4. Salva con nome Query1
    5. Crea una nuova query dove importi TuaTabella e Query1
    6. Unisci 2 linee di join fra i campi NomeProdotto e Data-MaxDiData
    7. Trascina nella griglia tutti i campi di TuaTabella
    8. Salva con nome Query2

    Ho fatto un test e Query2 mi restituisce i valori che tu vorresti.
  • Re: Funzioni di aggregazione in una query

    MI chiedo se hai LETTO IL REGOLAMENTO...!

    Visto che viene definito CROSSPOST il postare su altri siti... in modo NON CONFORME, mi chiedo perchè procedere... se non provvedi a sistemare le cose.

    Segnalo questo 3d ai moderatori.
  • Re: Funzioni di aggregazione in una query

    Ciao mogaverik74, se vuoi continuare la discussione su questo forum devi chiuderla negli altri.
    Se vuoi continuarla in altri forum, la chiudiamo su questo.

    Fammi sapere come vuoi procedere
  • Re: Funzioni di aggregazione in una query

    Scusatemi tutti ma non sapevo certo voglio procedere qui su questo sito
  • Re: Funzioni di aggregazione in una query

    Non so come chiuderla sull'altro però
Devi accedere o registrarti per scrivere nel forum
7 risposte